Skip to content

robert-orlinski/robertorlinski.pl

Repository files navigation

robertorlinski.pl 🚀

I blog from time to time (currently only in Polish). I also like TypeScript, React and Next.js.

So what can come from the combination of those 2? Blog page written in TypeScript, React and Next.js! Also with content written as MDX files, nice features like quick search, Giscus comments, code highlighting based on rehype-prism in articles, autogenerated RSS feed, search results cache, and some other stuff.

You can find it live at robertorlinski.pl and see more!

Some screenshots:

How can you run it in your local environment?

Right now, I am using node@17.9.0.

Copy the repo:

git clone https://github.com/robert-orlinski/robertorlinski.pl.git
cd the-path-to-which-you-cloned-the-project

Run the app:

npm install
npm run dev

If you want to have newsletter running, you will need to define 2 environmental variables (MAILCHIMP_AUDIENCE_ID and MAILCHIMP_API_KEY) in .env.local file.

If you want to build the project, you can use:

npm run build

And if you want to start the built project, you can use:

npm run start

Used technologies:

  1. React.js (the main project framework);
  2. Next.js (React framework with server side rendering, static pages generating and back-end building capabilities);
  3. TypeScript (language which makes JavaScript type safe);
  4. Styled Components (CSS in JS tool);
  5. MDX Bundler (tool for markdown files in which we can also include React components);
  6. TS-Node (to have TypeScript also in Node.js files);
  7. Jest and React Testing Library (for unit and React components testing);
  8. React Hook Form (nice and fast forms).

Additionally, I am using some smaller and bigger tools: ESLint, Prettier, Day.js, rss, polish-plurals, slugify, rehype-prism, and reading-time.

What I want to implement next?

  1. Dark mode!
  2. Share buttons in single articles.
  3. Newsletter archive.

And that's it for now. Maybe you have some ideas for new features or content you would like to see on this blog? If yes, you can always propose them in the issues tab!

Contribution

This blog page is an open-source project done for training and "having a nice space on the Internet) so code review or contributions of any kind are welcome and appreciated. Feel free to make bug, code review, enhancement or question requests in the issues tab ☀️