I'm not certain that I'm ready to undertake this project, but I'm hoping that good enough ideas show up that would allow me to proceed... This would require two separate programs. The server would be written in Visual C++ or C#. The client side would preferably be in Visual C++/C#/Visual Basic/.NET. Client: I would like a "buddy-list" style client that supports chat and file transfer with an intuitive interface. Clients would connect directly for chatting and file sending, NOT send messages thru the server. I would like the people on the buddy list to have changeable status (Online, Away, Offline...etc). Server: Actually, the server software is what I'm unsure of. It would be a necessity for it to use as little bandwidth as possible. Allowing many users to use the same server even if the server is hosted on a cable or dsl connection. I would suppose the server would be updated with logged-in user IP's. The only thing I'm sure of about the server is that it would need to allow the registering of new users. (I'm guessing a small record in a database of: User #, User Name, Password.. maybe status/last ip??). I would like the server to sit down on the toolbar (system tray?) instead of just minimizing. (Or, could the server be something I could use on a hosted website? 300meg space/30 gig transfer limit) With your bid's, please post information on how your client/server pair would work (esp how you will keep server bandwidth usage minimal). Hopefully, with enough information and good ideas we can go forward with this project!! Possible future expansions on this project (hopefully with the same coder): 1) Perhaps the ability to interface with MSN or ICQ? 2) Video Chat? 3) Messages sent to users that are offline could be stored on the server until they log on. Please feel free to alert me if there are problems with my idea.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. 2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request. 3) Complete ownership and exclusive distribution copyrights to all work purchased. 4) Proper in-Code documention of what each procedure/function does.
## Platform
Client: Windows 95/98/XP/2000/NT Server: Windows 98/XP/2000 Server should be able to run using minimal bandwidth on a computer of 700mhz or faster (the computer has 2x128 meg ram) and currently a cable connection. Client should be able to run on fairly bare-bones Win 95 and up having 128 meg of ram and dial-up/Lan/cable/dsl modems.