DotShare
A socially driven website for sharing dot files
DotShare was a project with the goal of solving a problem that I and many others often ran into in the world of *nix customization.
As a short preface, in the *nix world config files are often referred to as dot files (dots for short), hence the name DotShare. This is because on *nix systems config files are usually hidden files which are denoted by their names beginning with a dot (period).
What the problem was
More often then not dot files could be found in 2 places:
- *nix distribution's forums.
- GitHub (or similar) repos.
The problem with the first item on that list was that every distribution has it's own forum with a separate thread for every app. So when you multiply the number of popular distributions by the number of apps you're interested in, this quickly turns into a nightmare when trying to find interesting new ways of toying with your desktop.
Now not only was it a pain to keep track of all these threads, spanning numerous forums, it was becoming commonplace to start hosting all of your dot files on sites like GitHub in your own personal dots repo. The problem with this was that searching for a specific app's configs on such sites was only slightly more convenient than looking for a needle in a haystack.
How to fix the problem
With the fractured state everything was in, the obvious first step was creating a central location for the sole purpose of sharing dot files. Once everything was located in one place the main focus was usability and discovery as these were the major hurdles with the current systems.
The core parts of accomplishing this were user requested (not created) categories and a simple "likes" system to make the exceptional rise to the top. To enhance usability, the ability to easily preview relevant dots was enabled by a JavaScript lightbox. Lastly (but certainly not leastly), to enhance discovery was the ability to follow users and get a stream of their activity on the site.
What was involved
DotShare was coded over the period of 3 months, over which I learned Python and coded it from the ground up on the Flask microframework. I also mocked up and coded the design. Lastly, once the codebase was in a launchable state, I setup and secured a VPS to host DotShare.