out2gether-backend is a robust server-side framework tailored for location-aware applications, leveraging PostgreSQL's earthdistance extension to perform efficient geospatial computations. It offers a comprehensive set of API endpoints for user management, content creation, and interactions, all secured with JWT and OAuth authentication. Designed with modularity in mind, it includes middleware for validation and user extraction, ensuring scalable and maintainable backend architecture.
Why out2gether-backend?
This project simplifies building location-based features and content management systems. The core features include:
- 🗺️ Geospatial Calculations: Utilizes PostgreSQL's earthdistance extension for precise distance queries between geographic points.
- 🔒 Secure Authentication: Supports JWT tokens and Google OAuth for seamless, secure user login.
- 🛠️ Modular API Design: Provides organized endpoints for users, posts, categories, favorites, notifications, and more.
- 🚦 Middleware Validation: Ensures request integrity with middleware for body, query, and user authentication.
- 📦 Ready-to-Use Database Schema: Includes schema and seed data for rapid development and testing.
- 🌐 Location-Based Content Filtering: Enables efficient filtering and retrieval of location-specific data.
This project requires the following dependencies:
- Programming Language: JavaScript
- Package Manager: Npm
Build out2gether-backend from the source and install dependencies:
-
Clone the repository:
❯ git clone https://github.com/LBuddyBoy/out2gether-backend
-
Navigate to the project directory:
❯ cd out2gether-backend -
Install the dependencies:
Using npm:
❯ npm installRun the project with:
Using npm:
npm startOut2gether-backend uses the {test_framework} test framework. Run the test suite with:
Using npm:
npm test