"Free-Domainia is an innovative platform designed to streamline the process of deploying React or JavaScript projects online, offering a comprehensive suite of services including domain provisioning, deployment, and building capabilities, all at zero cost to users. By harnessing the power of state-of-the-art open-source technologies such as Redis, Docker, and Aiven, Free-Domainia ensures seamless deployment experiences for its users.At the core of Free-Domainia is its user-friendly interface, which simplifies the deployment process, allowing users to effortlessly launch their projects onto the web with just a few clicks. Leveraging the latest advancements in containerization technology, Free-Domainia utilizes Docker to provide a scalable and efficient deployment environment, ensuring optimal performance for deployed projects.
Containerization : | Understanding the concept and purpose of containerization.Grasping the functionality and usage of Docker for encapsulating applications and dependencies. |
Image Management: | Probably I worked for this part mostly such a pipeline was the backbone of this project, I was too confused and wanted to leave project for once however, I slowly worked of making a streamlined flow of generating build files (docker helped) and then getting images deployed on S3 or cloudfare (I ended using both) |
Using promises | I have only heard and learned about promises and never utilized them in my any of the project until now, oh man they were life saver, they helped me in making and flow better and workable, I literally now want to use promises everywhere, I really got the understand of promises, async await, .then and catch |
AWS Services: | Familiarizing oneself with ECR (Elastic Container Registry) for secure Docker image storage. Understanding ECS (Elastic Container Service) and its role in orchestrating containerized applications. Exploring EC2 (Elastic Compute Cloud) for scalable computing resources. Deployment Challenges: |
PostgreSQL: An open-source relational database management system known for its reliability, scalability, and advanced features, widely used in web development for storing and managing structured data.
AWS SDK: A collection of tools and libraries provided by Amazon Web Services (AWS) for developers to interact with AWS services programmatically, facilitating integration with cloud infrastructure.
Docker: A platform for containerizing applications, allowing developers to package software and its dependencies into standardized units called containers, making it easy to deploy and manage applications across different environments.
Next.js: A React framework for building server-side rendered (SSR) or static web applications, providing features like automatic code splitting, route prefetching, and server-side rendering out of the box.
React: A JavaScript library for building user interfaces, developed by Facebook, known for its component-based architecture, virtual DOM, and declarative approach to building UIs, making it highly efficient and easy to maintain.
Welcome to the Free-domainia project! Follow these steps to set up and run the project on your local machine.
Before you begin, ensure you have the following installed:
- Node.js (v14 or higher)
- npm (v6 or higher)
-
Clone the repository:
git clone https://github.com/Girishbari/free-domainia.git
-
Navigate to the project directory:
cd free-domainia
-
Configuration ⚙️ :
Before running the project, you may need to configure certain environment variables or settings. These configurations are typically found in
.env
files within specific directories. Ensure that you review and update these configurations according to your environment.
Run individual components separately, follow these steps:
Navigate to the server directory and install the dependencies:
cd dir && npm install
Navigate to the client directory and start the client:
cd client && npm run dev
Contributing to open-source software (OSS) projects can be a rewarding and fulfilling experience. Not only can you learn new skills, but you can also help make a valuable contribution to a project that benefits the broader community
-
Remember to read Code of Conduct before contributing.
-
Read the Git Workflow to follow best practices.
-
Follow the Contribution Guidelines.
-
Create an issue to report bugs, and vulnerabilities or add a new feature.
-
Remember to add a good commit message.
-
Don't spam if you do it your PR/issue will be closed.