DevPortal is an open-source developer portal designed to manage multiple APIs efficiently. It features a React-based frontend and a Strapi.io backend, providing a user-friendly interface for API documentation, authentication, and management.
- Node.js v18.20.8 ⚙️
Below are the necessary environment variables required to run the project.
| Variable | Description |
|---|---|
DATABASE_CLIENT |
Database client |
DATABASE_HOST |
Database hostname |
DATABASE_PORT |
Database port |
DATABASE_NAME |
Database name |
DATABASE_USERNAME |
Database username |
DATABASE_PASSWORD |
Database password |
These variables are required only if you enable S3 storage instead of local storage.
| Variable | Description |
|---|---|
AWS_ACCESS_KEY_ID |
AWS Access Key ID |
AWS_SECRET_ACCESS_KEY |
AWS Secret Access Key |
AWS_REGION |
AWS Region |
AWS_BUCKET |
AWS S3 Bucket Name |
AWS_BUCKET_SUBDIRECTORY |
Subdirectory inside the bucket |
AWS_CDN_DOMAIN |
AWS CDN Domain for S3 |
Strapi supports local storage (default) or AWS S3 storage. Modify /config/plugins.js to configure storage options.
module.exports = ({ env }) => ({
upload: {
provider: "local",
providerOptions: {},
},
});module.exports = ({ env }) => ({
upload: {
provider: "aws-s3-use-cdn",
providerOptions: {
accessKeyId: env("AWS_ACCESS_KEY_ID"),
secretAccessKey: env("AWS_ACCESS_SECRET"),
region: env("AWS_REGION"),
params: {
Bucket: env("AWS_BUCKET"),
},
actionOptions: {
upload: {},
uploadStream: {},
delete: {},
},
cdnDomain: env("AWS_CDN_DOMAIN"),
bucketSubDirectory: env("AWS_BUCKET_SUBDIRECTORY"),
},
},
});