Archived
1
1
Fork
You've already forked website
0
My website written in Rust and Handlebars (archived) https://codeberg.org/ownet/indie-wemblate
This repository has been archived on 2026年03月10日. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
  • Handlebars 71%
  • Rust 24.5%
  • CSS 2.8%
  • XSLT 0.8%
  • Shell 0.8%
  • Other 0.1%
2026年03月10日 13:15:06 +00:00
git_hooks fix: update githook to ignore prtials 2025年05月17日 15:11:34 +01:00
migrations added better UX and more validations 2025年08月08日 12:28:21 +01:00
resources blog: added new feed-route-change blog 2025年10月02日 15:18:54 +01:00
src format 2025年09月06日 12:15:45 +01:00
static disable gemini crawler 2025年07月20日 09:27:07 +01:00
templates fix typos 2025年10月05日 11:48:24 +01:00
.dockerignore feat: add docker support 2024年07月07日 16:55:48 +01:00
.gitignore Move configs to a new file 2024年08月04日 11:03:06 +01:00
App.toml.example Use the config file for setting domain and display names in feeds 2024年08月07日 12:08:10 +01:00
Cargo.lock chore: bump deps 2025年09月23日 13:35:42 +01:00
Cargo.toml chore: bump deps 2025年09月23日 13:35:42 +01:00
deny.toml chore: update cargo-deny with license changes 2025年03月19日 18:19:02 +00:00
docker-compose.yaml fix: build process 2025年07月25日 12:14:19 +01:00
Dockerfile chore: bump rust version in docker 2025年10月08日 20:42:53 +01:00
LICENSE Update license information 2024年02月11日 09:08:11 +00:00
README.org final commit 2026年03月10日 13:15:06 +00:00
rustfmt.toml fix clippy warnings 2025年09月06日 12:15:26 +01:00
setup.sh update setup 2025年09月06日 12:54:27 +01:00

Website

This project has been abandoned in favour of Ownet/indie-wemblate - which is a comple re-write of this project with more features!

https://nogithub.codeberg.page/badge.svg
Please don't upload to GitHub.

This is my personal website containing my blogs, projects, things I do, and ways to contact me. This website is written in Rust and Handlebars, partially supporting indieweb while keeping accessibility and minimalism in mind. You are free to clone this repository and use it as you wish, as long as you abide by the license.

What it supports

This website partially supports IndeiWeb with indie-auth, h-entry, and h-card supports built in. So it should be fairly easy to crawl my website using microformat tools!

To see everything this project support related to IndieWeb, have a look at am-i-indieweb-yet page. I have a long-term goal of being completely indie-web supported with other features like webmention, but I'm a bit pre-occupied to do it at the moment.

FAQ

Can I use your blog?

Yes! But there are lots of hard-coded texts and references to my name and work in the repo, cleaning it up is a work in progress, so if you want to use my blog, please replace them with your details or remove them.

How do I build?

You need rust installed in the system, once you have it, do the following.

  1. Clone this repository
  2. Run setup.sh - this will just add a pre-commit hook to update last modified date of the posts.
  3. Copy the App.toml.example file to a new file called App.toml

    1. Update secret_key with a secret key of your own, read the rocket configuration guide to know what it does and how to generate one.
    2. If you have a unifiedpush server setup, update the notify_url with your notification channel url to get notifications when your post gets webmentions.
    3. Update the [default.card] section with your details (all are mandatory).
  4. Do what I told in the answer for [What changes should you make](#what-changes-should-you-make)?
  5. Once you have created new blogs and projects, add them to the JSON files in the resources directory (use the existing formats).
  6. Test your changes, do cargo run to launch your new website.

To build and run the project in the production, do -

cargo build --release # generate production binary
./target/release/website # run the binary

What changes should you make

As I mentioned above, the project has too many references to my name and my work, so the following must be done.

  1. Delete all files in the templates/blogs, and templates/projects folders (take a copy of one of the files if you need reference).
  2. Rewrite all *.html.hbs files in the templates folder to refer your details, you can keep the one on the footer or just reference my name somewhere in your blog to let people know where you got the website source from.
  3. Update src/utils.rs to match your details (I know, this should be in a config file instead).
  4. Update the JSON files in the resources folder.
  5. Remove any other references to "Coding Otaku" and "Rahul" that you can find, I might have missed something.

LICENSE

Copyright (C) 2021-2030 Coding Otaku (Rahul Sivananda) <contact@codingotaku.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.