Baselink is built as a fullstack serverless app using modern technologies:
- Frontend: React + Vite (Admin & User Portal)
- Backend: Node.js + Express (API Layer)
- Monorepo: Managed via pnpm
- CI/CD: GitHub Actions + Serverless Framework
- Database: AWS DynamoDB
- Auth: AWS Cognito
Quick Start
The fastest way to get started with Baselink:- Install all local dependencies
- Scaffold a Baselink project
- Configure your AWS profile
- Deploy the full platform (API, Admin, Web)
- Add your first admin user
- Output project URLs
The quickstart process may take several minutes to complete as it sets up the entire infrastructure.
Local Development
To start Baselink locally after initial setup:Manual Setup
If you prefer to set up Baselink manually or need more control over the configuration:Step 1: Install Requirements
Step 2: Create Your Project
Step 3: Configure and Deploy
Development Commands
Available Scripts
Available Scripts
Setup & Configuration:
pnpm run setup- Initialize project configurationpnpm run aws:profile- Configure AWS credentialspnpm run generate:env:local- Generate local environment variables
pnpm run start:api- Start the API serverpnpm run start:admin- Start the admin interfacepnpm run start:web- Start the web application
pnpm run deploy:staging- Deploy to staging environmentpnpm run deploy:production- Deploy to production environmentpnpm run add:user:staging- Add admin user to stagingpnpm run urls:staging- Get staging environment URLs
Environment Variables
Environment Variables
Baselink uses environment-specific configuration files. The main variables include:
AWS_REGION- AWS region for deploymentAWS_PROFILE- AWS profile nameDATABASE_URL- Database connection stringGITHUB_CLIENT_ID- GitHub OAuth client IDGITHUB_CLIENT_SECRET- GitHub OAuth client secret
Troubleshooting
AWS Configuration Issues
AWS Configuration Issues
If you encounter AWS-related errors:
-
Verify your AWS credentials are properly configured:
- Ensure you have the necessary permissions for the services being deployed
- Check that your AWS profile is correctly set in the project configuration
Port Conflicts
Port Conflicts
If services fail to start due to port conflicts:
-
Check which processes are using the required ports:
- Kill conflicting processes or modify the port configuration in your environment files
Database Connection Issues
Database Connection Issues
For database-related problems:
- Verify your database URL is correct in the environment configuration
- Ensure the database is accessible from your local network
- Check that all required database migrations have been applied
Additional Resources
For additional support or questions about Baselink development, please refer to the project’s internal documentation or contact the development team through the Support button on the navigation bar of this documentation site.