Coder Social home page Coder Social logo

xplosionmind / tommi.space Goto Github PK

View Code? Open in Web Editor NEW
7.0 2.0 0.0 4.33 MB

The virtual representation of the mess inside Tommi’s mind [MIRROR]

Home Page: https://tommi.space

License: Creative Commons Attribution Share Alike 4.0 International

JavaScript 1.89% HTML 23.05% Nunjucks 0.44% Liquid 11.94% SCSS 62.69%
tommi blog resume note space personal-website indieweb poetry weird webrings

tommi.space's Introduction

⚠️ Tommi’s mind 🤯

This repository contains the virtual representation of the mess inside Tommi’s mind.

👾 Source code

The main repository is hosted on Codeberg and mirrored on GitHub, where issues are being tracked.

📟 Software

This website is proudly built with Eleventy.

🏠 Hosting

This website is self-hosted on Nebuchadnezzar, Tommi’s server.

ℹ️ Info

Go to the website development page.

tommi.space's People

Contributors

xplosionmind avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

tommi.space's Issues

Improve “Around the world” page

  • The embedded map starts with a too magnified scale
  • Distinguish “around the world” from “places to go visit”
  • Instead of a list, display a boxes grid
  • Places dataset pagination
    • how to handle pages that have already some content in Markdown?
    • how to handle places I do not want to create a page for and redirect straight to the original website, instead?

Self-hosting instead of Netlify + Storj

From Hosting > Website log

Since the beginning, Netlify has been where tommi.space is hosted. It has to be noted, though, that Netlify is no champion of openness, free software, or sustainable infrastructure, hence not a service whose values I completely share. Nevertheless, it is awesome, since at the same time it both has more than what I need, and it is fairly simple. It hurts to say it, but I love it and I am sticking with it, since it really makes much of the work easier.

All of the relatively big files on the website (such as images and podcast audios) are hosted on Storj, and through a couple of tricks they are seamlessly served through Netlify. Storj too has its red flags, since it is based on the blockchain and I am still quite skeptical concerning all of this stuff. But, again, it wonderfully does the work, at least until Cubbit won’t get around static hosting, as Stefano, its CEO, anticipated to me someday it will.

  • Decide whether Storj is a sustainable and ethical option: no
  • Figure out a way to handle assets in /, but not present in the repository (hence stored somewhere else). Renaming with a subdomain or with a sub-folder?
    assets folder is used as pass-through copy
  • Write emails to all sustainable VPS providers asking to get the service for free to start a partnership.

Printing more contextual page metadata

To be printed somewhere in the page “extra” information:

  • todo: development to-dos
  • related: URLs of related resources that have not been directly linked in the text
  • more: URLs of alternate pages by other people

Improve “scroll to” button

  • a vanilla JavaScript main version
    • create the HTML with JS
    • Add sound effect (Elevator.js?) (#58)
    • optimize the current code: the button should be turned when the page is open, not only at first scroll.
  • a noscript alternate version

Resources

Webmentions implementation

Tor .onion address

Generate a .onion address and deploy the website through it.



Resources

  • mkp224o: vanity address generator for tor onion v3 (ed25519) hidden services

Improve data management

Currently, all of the data I have is stored in the data folder of this repository. Therefore, updating data quickly and easily becomes very hard. The solution I found to be best is to implement Baserow as a backend and as the main data management solution, so that Eleventy only needs to fetch the data and parse it into the website at buildtime. I have to:



Resources

Self-hosted analytics

From my Website Log > Analytics

The sole aspect I am interested in is knowing how many people visit my website, specifically which pages.

Being Google Analytics definitely out of consideration, finding a simple, free, light (and hosted) analytics service is not simple.

  • counter.dev is the most clever, the lightest, and among the most beautiful analytics software I have ever seen. Unfortunately, it has some big problems that make its numbers not remotely corresponding to reality, and its developers do not plan to fix them anytime soon.
  • Matomo is the go-to Google Analytics alternative, but, as such, it has many features that I do not need and that make it quite heavy.
  • Plausible is the analytics service I have been using in the last two years, even though it does not feel 100% right, even if it nicely does the work I require. Probably, it is because it costs me a little more than 30€ a year, and I would like to avoid such expense.

Of course, I prefer to self-host analytics, but as of right now Matomo is the only analytics platform packaged for YunoHost (the OS I am using on Xplosion Server). As soon as any light analytics software will get packaged for YunoHost, I will switch to it.

Avoid using multiple line breaks

From Line Breaks : MGA

Historically, multiple <br /> tags were often used to insert extra blank lines in order to increase vertical spacing between lines of text or between other content appearing on the page. This practice is no longer preferred under HTML 5, and should be replaced with style sheets where necessary.

“Stop title animation” button

tommi.space should represent me, hence my Tomminess completely. Nevertheless, the “annoying" aspect should not be (too) detrimental in terms of user experience. Therefore, I should implement a way to stop the TOMMI SPACE title animation on top of every page.

The final solution should:

  • place a play/pause in the toolbar
  • save the chosen option in localStorage
  • automatically disable the animation if the user disabled JavaScript, hence the chosen option cannot be saved

Generating previews for internal linked pages

#15 is a very bare-bones feature.

To make it more useful, generate a preview both for notes linked in the text and for the ones in the backlinks list.

The preview should:

  • pop-up on hover
  • display the title
  • display the tags
  • display the description/excerpt
  • possibly, also a thumbnail of the previewed note’s image, if it has one


Resources

Creative ideas

CV automation and handling

My plan is to have CV generation within a broader automated integration within the website:

  • Refactor and rewrite the resume using JSON Resume schema
  • Integrate the resume with
  • Handle the CV both in the English and Italian versions
  • Use GitHub Actions to generate
    • PDF CV (with LaTeX?)
    • HTML version

redirect_to

As I configured the redirect_from page, I should be configuring a redirect_to, thanks to which, after visiting to a link on tommi.space, you automatically get redirected to an external page.

Redirections

  • /issues should redirect to site.issues
  • /changelog should redirect to site.changelog
  • /cv should redirect to site.author.cv.it
  • /resume should redirect to site.author.cv.en

Using a different font for headings

So far, tommi.space has been using three fonts:

  • EB Garamond as serif font for quotes and more peculiar writings
  • Ubuntu Mono for code
  • Inter for everything else

Most websites often use another font for headings. I might consider this for tommi.space, too.

ActivityPub support

Implementing ActivityPub, hence making tommi.space part of the Fediverse, is placed within the broader plan of making the website interoperable and connected with as many protocols and platforms as possible.

Resources

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.