+
Skip to content

999Ali999/Greenlight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🟢 Greenlight | Still on going!

Greenlight is a comprehensive web application project that demonstrates clean and effective Go programming practices. It was designed as part of Let's Go Further, a book by Alex Edwards that focuses on building real-world applications using Go.


🚀 Overview

Greenlight is a learning-driven project aimed at developing a robust and scalable web application. This project integrates key concepts like user authentication, role-based access control, and the management of movies data, while adhering to Go's best practices.

🛠️ Tech Stack

  • Backend: Go (Golang)
  • Database: PostgreSQL
  • Authentication: Secure password hashing and role-based access control with JWT
  • Architecture: Modular and scalable design using layered architecture
  • REST API: Exposing JSON-based endpoints for easy integration

🎯 Features

  • User Authentication: Secure user registration, login, and session management.
  • Role-Based Access Control (RBAC): Different roles to manage access and permissions.
  • CRUD Operations: Perform Create, Read, Update, and Delete operations on movie data.
  • Validation: Strong input validation to ensure data integrity.
  • Secure Practices: Built-in password hashing, data validation, and secure headers.

📚 Learning Outcomes

The Greenlight project is an excellent opportunity to:

  • Gain hands-on experience with Go’s built-in web development tools.
  • Learn how to handle HTTP requests, manage routing, and work with middleware.
  • Understand how to structure large Go applications for scalability and maintainability.
  • Work with PostgreSQL in Go to manage data persistence.
  • Implement secure and scalable user authentication and authorization systems.

📦 Installation & Setup

  1. Clone the repository:

    git clone https://github.com/your-username/greenlight.git
    
  2. Install Go dependencies:

    go mod tidy
    
  3. Set up the PostgreSQL database

  4. Run the application:

    go run ./cmd/api

About

RESTful API in Go with countless features and Best practices

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载