my-new-project/
├── node_modules/
├── src/
│ ├── config/ # Configuration files
│ │ ├── redisConfig.ts # Redis connection configuration
│ │ ├── postgresConfig.ts # PostgreSQL connection configuration
│ │ └── env.ts # Environment variables (dotenv)
│ │
│ ├── database/ # Database-related setup
│ │ ├── initDB.ts # Initialize PostgreSQL database
│ │ └── models/
│ │ ├── User.ts # User schema/model
│ │ └── APIKey.ts # API Key schema/model
│ │
│ ├── middleware/ # Middleware functions
│ │ ├── authMiddleware.ts # API key authentication middleware
│ │ └── rateLimitMiddleware.ts # Rate limiting middleware
│ │
│ ├── services/ # Business logic
│ │ ├── authService.ts # User authentication services
│ │ ├── apiKeyService.ts # API key generation & management
│ │ └── rateLimitService.ts # Rate limiting algorithms (Token Bucket, etc.)
│ │
│ ├── routes/ # API routes
│ │ ├── authRoutes.ts # Routes for user authentication
│ │ ├── apiKeyRoutes.ts # Routes for API key generation/management
│ │ └── securityRoutes.ts # Routes for security & rate limiting checks
│ │
│ ├── utils/ # Utility/helper functions
│ │ ├── logger.ts # Logging utility
│ │ └── constants.ts # Constant values (e.g., Redis keys)
│ │
│ ├── index.ts # Main entry point
│ └── app.ts # Express server setup
│
├── dist/ # Generated JS files after build
├── .eslintrc.json # ESLint configuration
├── .prettierrc # Prettier configuration
├── package.json # Dependencies and scripts
├── package-lock.json
├── tsconfig.json # TypeScript configuration
└── .env # Environment variables
-
Notifications
You must be signed in to change notification settings - Fork 1
LEVIII007/z-secure-server
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published