Chat Backend

Implement File Sharing you own this product

This project is part of the liveProject series WebSocket-based Chat Backend in Go
prerequisites
basic Go • Gorilla WebSocket library
skills learned
creating a WebSocket server • uploading files to an object storage service • verifying functionality using tests
Amit Saha
1 week · 4-6 hours per week · BEGINNER

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Look inside

In this liveProject, you’ll create advanced functionality for a chat application, allowing users to upload files during a text chat. You’ll use the WebSockets framework to receive requests from browsers and set up WebSocket connections that let customer support teams chat with customers. Challenges include implementing the file upload support, and writing tests to ensure the end-to-end functionality is high-quality and bug-free.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Amit Saha

Amit Saha is a software engineer at Atlassian in Sydney, Australia. He’s the author of Practical Go: Building Scalable Network and Non-Network Applications (Wiley, 2021), Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More! (No Starch Press, 2015), and Write Your First Program (PHI Learning, 2013). His other writings have been published in technical magazines, conference proceedings, and research journals. He can be found online at https://echorand.me.

prerequisites

This liveProject is for Go programmers who are comfortable with the language’s basics. To begin this liveProject, you will need to be familiar with the following:


TOOLS
  • Basic Go
  • Basic Javascript, HTML, and CSS
  • Basic Gorilla WebSocket library

you will learn

In this liveProject, you’ll implement a WebSocket backend as well as command line WebSocket clients that can verify functionality. You’ll use the Go Cloud Development Kit to upload files to a locally running object storage service, and create an HTTP server which will serve files from memory.


  • Create a WebSocket server
  • Upload files to an object storage service
  • Verify functionality using tests

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Implement File Sharing project for free