Skip to content

Latest commit

 

History

History
122 lines (76 loc) · 5.54 KB

README-en.md

File metadata and controls

122 lines (76 loc) · 5.54 KB

Website - Miguel Muller - Personal Website

Code quality GitHub last commit GitHub repo size GitHub branch checks state

README.md - English README.md - Portuguese

📌 Introduction

In 2013, when I started developing as a freelancer, I created a personal agency and named it "Devim." I kept the name Devim to distance myself from my xxx because I couldn't give it the attention it deserved due to other professional commitments.

This project is a revamped version of the website, now under my own name.

The project was built using Next.JS, a React.js framework, and utilizes TypeScript.

This project serves two purposes:

  1. To be the repository for my personal website.
  2. To act as an experimental lab.

The project is not complete, and it never will be. Just like my vision of software, it meets the needs of now, but the needs of tomorrow may differ.


🗄️ Content Management

The project uses Hygraph as the main tool for content management. Hygraph is a powerful content management platform that offers a variety of features and functionalities to facilitate the creation, organization, and publication of content efficiently and intuitively.

Admin Content - Hygraph

▶️ Hygraph Configuration

Before running the project, it's necessary to configure the graphcms.json file in the settings folder according to the graphcms.json.exp template with information from your project on Hygraph.

This information is essential for the project to connect to Hygraph and manage content efficiently.


🔗 Environments

This project has two main environments: Production and Development.

  • Production: The production environment is where the stable site is hosted. You can access it here:
Live: www.miguelsmuller.dev.br
  • Development: The development environment contains new features in testing. When commits occur in branches other than the main (master), a staging environment is generated automatically. Links to these staging environments are temporary and will only be available after the push to the parallel branch.

💻 Requirements and Installation

The requirements for running the project locally are simple.

You need to have NodeJS and NPM installed on your computer or in a virtual machine.

$ node --version && npm --version

For reference, NodeJS v18 and NPM v9 were used in development.

Install project dependencies with: $ npm install

Run the Development Environment with the NPM script: $ npm run dev


♾️ Workflow

WORKFLOW.md - This project uses the workflow pattern called git flow.


🥇 Tests

[To be implemented]


GITHUB ACTIONS - This project utilizes two GitHub Actions workflows for deployment:

  • Deploy to Live (firebase-hosting-master.yml): This workflow is automatically triggered on commits to the main branch (master) and is responsible for deploying the stable version of the site to the production environment.

    • You can track the progress of this workflow here.
  • Deploy to Preview (firebase-hosting-channel.yml): This workflow is automatically triggered on commits to branches other than the main (master) and is responsible for creating a preview environment to test new features. Links to these preview environments are generated randomly and temporarily.

    • You can track the progress of this workflow here.

🔥 Firebase Functions

This project uses Firebase Functions for hosting, and the server.js file at the root of the project is the entry point for Firebase Functions. The main method, nextjsServer, is responsible for starting the Next.js server.

Package.json Configuration

Certifique-se de que o arquivo package.json está configurado corretamente, apontando para o arquivo server.js como o ponto de entrada principal das funções Firebase.


🛠️ Contributing

CONTRIBUTING.md - Specifications of how the contribution should be submitted


📝 Changelog

CHANGELOG.md - Chronologically list of changes for each version of a project


🖼️ Screenshot

Home