Skip to content

willquill/will-coquillette

Repository files navigation

willcoquillette.com

My personal website.

🚀 Project Overview

willcoquillette.com is a blazing fast personal website built with Astro.js and styled with Tailwind CSS.

Web development is not my primary strength. So I sincerely thank David Cojocaru, a 16yo coder from Romania for the theme. I just copied his Astro site and personalized it for myself.

Planned changes

  • Rename About layout to Markdown and make the title be a variable properly
  • Fix all the errors in the code
  • Resolve vulnerabilities

🌟 Features

  • 🚀 Fast and optimized - Built for speed and performance.
  • 🎨 Beautiful and customizable UI - Tailwind CSS for easy customization.
  • 🔒 Secure and reliable - Follows best security practices.
  • 🔄 Continuous integration and deployment - Automated workflows with GitHub Actions.

🛠️ Technologies Used

  • Astro.js - Static site generator.
  • Tailwind CSS - Utility-first CSS framework.
  • TypeScript - Typed JavaScript at Any Scale.
  • JavaScript - High-level, often just-in-time compiled, and multi-paradigm.
  • CSS - Cascading Style Sheets.

📚 Documentation

Prerequisites

  • Node.js and npm installed.
  • Git installed.

Development Tips

  • When I need an icon, I search it here.

Setup

  1. Clone the repository:

    git clone https://github.com/willquill/will-coquillette.git
  2. Install dependencies:

    cd will-coquillette
    npm install
  3. Run the development server:

    npm run dev

Usage

  • Build for production:

    npm run build
  • Deploy: (does this do anything...really?)

    npm run deploy

Publishing to Cloudflare Pages from GitHub

Good info here

Initial setup

  1. Install Cloudflare Workers and Pages application in your GitHub.
  2. Give it access to your repository.
  3. Login to Cloudflare and go to Compute > Workers & Pages > Create > Pages > Connect to git
  4. Select your repository, branch, select Astro as preset, leave defaults.
  5. Save & Deploy.
  6. In Cloudflare, go to Custom domains tab for your new site. Click "Set up a custom domain."
  7. Add the DNS records it tells you to add. Continue verifying, and you should be good!

Regarding DNS, I use DNSControl to manage my DNS with IaC, and my dnsconfig.js looks like this:

D("willcoquillette.com", REG_NONE,
    DnsProvider(DSP_CLOUDFLARE),
    DefaultTTL(1),
    // Cloudflare pages
    CNAME("www", "will-coquillette.pages.dev.", CF_PROXY_ON),
    ALIAS("@", "will-coquillette.pages.dev.", CF_PROXY_ON),

Updating the Cloudflare pages site

Here's the super cool thing about Cloudflare pages - when you push a commit to your development branch and open a pull request, the cloudflare-workers-and-pages bot will automatically deploy a development version of your site to a URL specified in the Preview URL section of the bot's message on your PR. It's pretty neat!

And then when you merge your PR, automation will publish the changes to the public site.

I still recommend doing npm run dev locally, but you have a real live public web page you can visit via that integration to view your branch work, which can help when collaborating with others.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

💬 Contact

Feel free to reach out to me at nonsense@willquill.addy.io.

🚀 Connect with Me

  • FIXME: Add socials

🌟 Show Your Support

Give a ⭐️ if you like this project!

🙏 Acknowledgments