Categorygithub.com/Fingertips18/go-starter
modulepackage
0.0.0-20250120175103-d5099a0af40f
Repository: https://github.com/fingertips18/go-starter.git
Documentation: pkg.go.dev

# README

Banner

🚀 Go Starter

This repository serves as a playground for exploring Go (Golang) features, including API development, syntax experimentation, and learning the basics of Go programming. Ideal for beginners and developers looking to get hands-on experience with Go.

🔗 Website Link: Live

📚 Table of Contents

🔧 Technologies Used

  • Frontend: React JS ⚛️

  • Backend: Go (Golang) 🚀

  • Database: MongoDB 🗄️

  • UI: Chakra UI 🏠

  • Query: Tanstack Query 🌐

Features

  • 📝 CRUD Operations: Create, Read, Update, and Delete operations for user and application data.

  • 📱 Responsive UI: Developed using Chakra UI components, ensuring a seamless experience across devices.

  • 📡 API: Robust API constructed using Express.js and MongoDB for seamless data interaction.

📖 Setup Instructions

🛠️ Backend Go (Golang)

  1. Clone the repository:

    git clone https://github.com/Fingertips18/go-starter.git
    
  2. Install dependencies:

    cd go-starter
    go mod tidy
    
  3. Set up environment variables. Create a .env file in the root directory::

    MONGO_URI=<MONGO_URI>
    PORT=<PORT>
    MODE=<MODE>
    CLIENT_URL=<CLIENT_URL>
    
  4. Run the backend server:

    go run main.go
    // or
    go install github.com/air-verse/air@latest
    air
    

⚛️ Frontend (React JS)

  1. Navigate to the frontend directory:

    cd client
    
  2. Install dependencies:

    npm install
    
  3. Set up environment variables. Create a .env file in the frontend directory:

    VITE_BASE_URL=<VITE_BASE_URL>
    
  4. Run the frontend server:

    npm run dev
    

📡 API Endpoints

  • Todos:

  • GET /api/todos: Retrieve a list of todos.

  • GET /api/todos/:id: Retrieve a single todo by ID.

  • POST /api/todos: Create a new todo.

  • PATCH /api/todos/:id: Update an existing todo by ID.

  • DELETE /api/todos/:id: Delete a todo by ID.

🤝 Contributing

Feel free to fork this repository and contribute by submitting a pull request. All contributions are welcome!

🧑‍💻 Contributors

Ghian Tan @ Fingertips (Github)

📜 License

This project is licensed under the MIT License.

# Packages

No description provided by the author

# Structs

No description provided by the author