Categorygithub.com/Anand-S23/Snippet
module
0.0.0-20240307183834-73b149176a0d
Repository: https://github.com/anand-s23/snippet.git
Documentation: pkg.go.dev

# README

Snippet

Platform to share code snippets easily with others. (Gist or Pastebin Clone)

Table of Contents

Quick Start

Snippet uses docker for easy development, docker and docker-compose are pre-requistes. Follow the following steps once the repository is cloned locally:

  1. Create a .env file using example.env as an base
  2. Run docker-compose up --build

Note: In order to test out if this is working as expected you can curl http://localhost:8080/ping, where the result should be pong

Features

The core idea for the platform, is to allow users to create repos with up to 5 code snippets. Users can then share the snippets to other people.

  • Authentication System: Users are able register/login/logout
  • Built-in editor: Snippet uses Monaco editor, which is the same one used in VS Code, enabling powerful editing capabilities
  • Code File Storage: Snippet uses S3 to store code files in a robust and scalable manner
  • CRUD Fuctionalities for repos: Users can create, read, update and delete repos
  • Scalable Database: Snippet uses DynamoDB with a single table design for optimized reterival and storage of data

Additional possible features:

  • Rate limiting using Redis or AWS Elastic cache
  • Comments on repos like with Gist
  • Ability for users to reset the password

Architucture

Technologies Used:

  • Go and Mux Router (Backend)
  • DynamoDB(Database)
  • AWS S3 (Storage)
  • TailwindCSS (Styling)
  • NextJS (Frontend)

License

Licensed under MIT License

# Packages

No description provided by the author
No description provided by the author