Building dynamic content websites just became easier with Tanam, a plug-and-play Content Management System (CMS) that is seamlessly integrated with Firebase. Whether you’re looking to create a blog, manage content, or even schedule posts, Tanam has got you covered. It also even features an AI ghostwriter to help you turn drafts into polished articles. Ready to dive in? Let’s explore how to set it up!
Setting Up TanamCMS
Before you start, ensure you have Firebase set up. For simplicity, we’ll take you through the steps necessary to configure Tanam on your local environment and deploy it to Firebase.
1. Configuration
To start with, you need to configure the Next.js application in a dot-env file named appscms.env
. A template file, appscms.env.local.example
, is provided to help you rename and populate the required values.
2. Build and Run Locally
Next, you will need to install the necessary dependencies and serve your application locally.
- Open your terminal and run:
npm install
npm run serve
3. Deploy to Firebase
To deploy Tanam to Firebase, you’ll need to follow the official documentation for Firebase App Hosting. This will guide you through setting your application for automatic deployment.
Configuring Firebase Cloud Secrets
To deploy Tanam, you’ll also need to set up secrets on the Google Cloud Platform (GCP) Secrets Manager. Here’s how to do it:
- Configure your environment variables by executing the command:
source appscms.env
echo $NEXT_PUBLIC_FIREBASE_API_KEY firebase apphosting:secrets:set --force --data-file - tanamApiKey
echo $NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN firebase apphosting:secrets:set --force --data-file - tanamAuthDomain
echo $NEXT_PUBLIC_FIREBASE_DATABASE_URL firebase apphosting:secrets:set --force --data-file - tanamDatabaseUrl
echo $NEXT_PUBLIC_FIREBASE_PROJECT_ID firebase apphosting:secrets:set --force --data-file - tanamProjectId
echo $NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET firebase apphosting:secrets:set --force --data-file - tanamStorageBucket
echo $NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID firebase apphosting:secrets:set --force --data-file - tanamMessagingSenderId
echo $NEXT_PUBLIC_FIREBASE_APP_ID firebase apphosting:secrets:set --force --data-file - tanamAppId
echo $NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID firebase apphosting:secrets:set --force --data-file - tanamMeasurementId
echo $GEMINI_API_KEY firebase apphosting:secrets:set --force --data-file - tanamGenAiApiKey
export APP_HOSTING_BACKEND=your-app-hosting-backend
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamApiKey
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamAuthDomain
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamDatabaseUrl
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamProjectId
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamStorageBucket
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamMessagingSenderId
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamAppId
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamMeasurementId
firebase apphosting:secrets:grantaccess --backend $APP_HOSTING_BACKEND tanamGenAiApiKey
Troubleshooting
If you run into any issues while setting up Tanam, here are some troubleshooting tips:
- Ensure all environment variables are correctly configured.
- Double-check your Firebase configuration follows the latest documentation guidelines.
- Look out for any permission issues; grant access properly as mentioned above.
- Add debug logs to your application to better understand any failing points.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Conclusion
Tanam is designed with user-friendliness as a top priority. By following these steps, you’re well on your way to having a fully functional CMS for your website on Firebase. It’s as easy as planting a seed and watching it grow into a fully blooming site!
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.