This repository contains the source code for my personal website and blog, dsanchezcr.com. The site is built using Docusaurus, a modern static website generator.
This website serves as a platform to share my thoughts on technology, software development, and other interests through blog posts. It also includes information about my projects and professional background.
- Docusaurus v3: Main framework for building the static site.
- React: JavaScript library for building user interfaces.
- Markdown (MDX): For writing content (blog posts, pages).
- Internationalization (i18n): Content is available in English, Spanish, and Portuguese.
- Azure Static Web Apps: For hosting and deployment.
- Azure Functions: For backend API functionality (e.g., contact form).
To get a local copy up and running, follow these simple steps.
- Clone the repository:
git clone https://github.com/dsanchezcr/website.git
- Navigate to the project directory:
cd website
- Install NPM packages:
npm install
To start the development server and view the website locally:
npm start
This command will open a new browser window with the local version of the site, typically at http://localhost:3000
. The site will automatically reload if you make changes to the source files.
To generate a static build of the website for production:
npm run build
The build artifacts will be stored in the build/
directory.
This website supports multiple languages:
- English (default)
- Spanish (
es
) - Portuguese (
pt
)
Content for different languages is managed using Docusaurus's i18n features. Translated files are located in the i18n/
directory.
The website is automatically built and deployed to Azure Static Web Apps via GitHub Actions. The workflows are defined in the .github/workflows/
directory:
azure-static-web-app.yml
: Builds and deploys the Docusaurus website.api.yml
: Builds and deploys the Azure Function API.
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
This project is private and the code is proprietary. However, the blog content, unless otherwise stated, is open for sharing and referencing with appropriate attribution.
Thank you for visiting my repository!