/ab-test-blog

Blog with many articles that allows for experimenting with different content formats

Primary LanguageTypeScriptMIT LicenseMIT

Yesenia Molina | Software Engineer Web | Coding Challenge

📝 Table of Contents

🧐 About

This is a Next.js project bootstrapped with create-next-app.

This project is my solution to the Blinkist coding challenge. It's a blog that features various articles (previously created by content creators). These articles can have different variations in sections like the content, title, CTA text, etc. The variations should be presented to the end user as A/B Tests and multiple tests can run in a single article.

🏁 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on deploying the project on a live system.

Prerequisites

yarn
Node.js >= 14.6.0

Installing

Cloning the repository

git clone https://github.com/yeseniamolinab/ab-test-blog.git

Install packages

yarn 

Run the development server:

yarn dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

🚀 Deployment

Vercel for GitHub automatically deploys with Vercel, providing Preview Deployment URLs and automatic Custom Domain updates.

🚦 CI/CD

To see the GitHub Actions workflows visit this link

Pull Requests

Every open PR will run the linter and build.

Merges into main

Any merges into the default branch will run linter and build and deploy the changes to vercel to which I have set up a custom subdomain (blog.yesimolina.dev).

✍️ Contributors

🎉 Acknowledgements

  • This app uses some of the components from shadcn/ui to get the advantage of beautiful, accessible, and customizable components.
  • next-themes for adding dark mode effortlessly

📝 Documentation

  • See my notion note for information about the proposed solution