Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do you build your personal start page?
147 points by yosito 53 days ago | hide | past | favorite | 117 comments
By personal start page, I mean a custom-made web page that you would set as the home page in your browser and use it as the starting point of doing things in the browser.

I'm considering building something with Next.js or Gatsby that I can self-host, but I'd love suggestions of the most customizable tools that would allow me to quickly integrate data "widgets" from diverse sources like Nextcloud, Fastmail, RSS readers (Inoreader, maybe), CalDAV, bank accounts, etc.

This sounds an awful lot like a portal that was so popular around 2000. That’s the way it used to be. You’d setup a personal portal on Yahoo or MSN or iGoogle or whomever provided your email. Then you’d load up whatever widgets you wanted and placed them in an organized grid. News and fresh content was populated by RSS and you’d have you own personal start page on the Internet.

The goal for any portal site was to convince you to spend more time on the portal (this is how we got {Yahoo,Google} news). The more time on the portal was more ad impressions they could sell. Social media didn’t like sharing content this way and so portals became significantly less popular.

I’d forgotten how much I’d missed those.

I think that portals lost traction much before social media rise.

I switched to Altavista, Google because of the lightweight home page.

I don’t know… Google kept iGoogle around for quite a while. And the only content that wasn’t freely distributed in RSS format were things like MySpace, Facebook and Twitter.

Social media as a class is pretty old, even if some of the current popular players are young. What was happening with Tom from MySpace or your ex from high school was some of the only information that wasn’t available on a portal.

I don’t think the rise of one directly led to the fall of the other. The way we consume information changes over time. And as we all collectively got better at information retrieval, portals were less important. The internet also move from “one” of the places you checked for content (so efficient checking with a portal) to the primary source for news and content for many people. Now browsing the web is just as much a part of the process, especially now that we had a decade or so of practice.

And to be clear — no content creation company liked portals or aggregators. No one wanted iGoogle in between you and their own advertising. As many hits as a good HN or Digg post could get you, if you were the NYT or a news company, you would rather people start at your homepage as opposed to direct linking in. And these media companies have gotten much more sophisticated. Licensed AP news feeds were everywhere on portals. Now, a newspaper would rather keep you in their site with a subscription. Different times, different business models.

You are definitely right though — AltaVista’s front page was significantly more cluttered than the default Google page. And that was an advantage for Google. Not only did the Google page load faster, but it was less distracting. CNBC at the time couldn’t figure out how Google was going to make much money with only in-results ads. Hindsight.

But that was the era when everyone had to type in SearchEngine.com to search? Which is what makes the clean and fast Google front page so attractive.

I dont even remember when was the last time I visited Google.com Homepage to search something. It all goes through the browser. Hence why Google, despite promising to both Mozilla and Steve Jobs not building a browser, actually went ahead and build Chrome. They dont want their Search entry point to be hold by their competitor. And Apple are now extorting $10B per year just on default search engine placement.

iGoogle <3 that name brings back a lot of memories.

It's too bad they're not popular anymore. Well... they ARE popular, only we let facebook and twitter decide what we see.

It's been years since I had one, and when I did it was plain, static html only. So I don't have any personal recommendations.

But in case you weren't aware, there is a subreddit for startpages (because, of course there is), you might find some inspiration and ideas there:


One more interesting to subscribe to, Thanks! I've been thinking to build a curated list of websites across different subjects, do you think there's an aggregation subreddit or tool to build one as well?

It's called a "home page". You even say that yourself. It's why the browser has a "home" button ... To take you to your (personal) home page. And even before that button and [saved] bookmarks, you had to have some place that contained your personal bookmarks. It was the page you set your browser to load when you opened it. And you did absolutely make it yourself (it was the first webpage I ever made).

The main/first page of a website was the "frontpage" to its visitors (but it surely felt like a home page to the owner - and it may have been).

In any web event, I think you will be best served by plain old html. It will be faster (in nearly all ways) than next.js or Gatsby.

I agree that a lot of browsers call it the "home page" or similar, but I don't think a lot of people call it that, so the term is ambiguous at best. How many people know that their browser has a Start Page (often customizable) and a Home Page (optional, pick a URL) in the first place?

Last time I had one, it was a big collection of work-related links, back when you could fit all the "important" documentation portals for a LAMP stack on one screen. :-)

I use the Flame Dashboard [1].

It runs in a docker container, has support out of the box for custom bookmarks and links and also detects other docker containers running on your machine and automatically lists them on the dashboard. It is even opensource, so you can customise it to your liking [2].

[1] https://hub.docker.com/r/pawelmalak/flame

[2] https://github.com/pawelmalak/flame

Oh please please may I shamelessly link to the Vlad.studio new tab extension [0] - I built it to solve this exact problem for myself, but also as another way for my wallpapers to be seen. This is how my new tab page looks now: [1]

[0] https://new-tab.vlad.studio/

[1] https://i.postimg.cc/y8R3x0Yt/my-new-tab.jpg

Looks pretty, and good job. Due to my background I prefer to be confronted with a color coded wall of text and charts ordered by importance and designed like 2000s Japanese websites.

Thanks! Unlike more generic tools, "start pages" are highly personal, and everyone has different preferences and needs. Therefore, universally good start page does not exist. But I made my own dog food to eat :-)

That looks great!

Do you know of any similar efforts for Firefox?

Thanks! I do not, unfortunately. I'm thinking of making my New Tab just a webpage, though, so it can be used with any browser (with obvious disadvantage of storing your data on someone's server).

link [1] refuses to connect.

Empty new tab in Firefox works great. There are also blank new tab extensions if you use Chrome.

What is exactly works great about it?

It is useless. Also this is what I have to deal with instead of my homepage opened.

I cannot open my homepage from local file on a new tab and they do not fix it for years.

What should happen in their strange brains to understand that this is basic functionality and it is not working! If home page doesn't work the browser doesn't work.

Homepage from local file can be opened on a first tab. It is a bug if firefox can't do the same on a next tab. How difficult to comprehend this for firefox team?

Very few people use this feature. Seems understandable it is low priority. Firefox is open source, which is great because you can work on a fix since you seem to care more than anyone else.

I went through the hell of their system of bug reporting to report this bug. After some time they just deleted it stating it was re-assigned by some bright individual to some other bug that is not fixed for years. I argued that this bug is different but never got reply from that bright individual.

So why do you think that dealing with such bright individuals when I'll fix the bug would be a success story? I mean if the one in charge of the project opens a new tab that doesn't work properly and instead of fixing it this bright individual presumably goes along the lines you've described then what are the chances that my fix would be applied? If everything under control of such bright individuals that do not see it as a problem in the first place how working to support them is even justified ?

I, too, rely on a completely blank tab.

I've never seen a need for a "start" page. The context when I open a browser changes almost every time; I never follow a routine.

It's also yet another thing to set up again when you reinstall your OS. I do that not infrequently as it's faster than periodically uninstalling everything from the past year, like libraries, apt packages for one time needs, ect. A full refresh gets rid of even the stickiest configs that sometimes even purge and autoremove can't get at.

I've started to find that what's even better than a fully tricked out installation that's heavily customized, is an minimal installation with basic usability features you can install in 20 minutes.

I like having half a dozen frequently used sites on my start page, as a better bookmark solution. Don't want a bar taking up screen real estate, but if I can click into my issue tracker, doc repo, email, etc from a new tab, that works great and then it goes away once I've loaded the site. Would be great if I could just have iframes of some of them (like the page listing all the timezones for my team so I know what time it is everywhere).

My start page url is about:blank

Yeah, I have never desired anything but about:blank.

But I seldom see even that, because instead of opening a tab and then typing in a URL or query, I’ll type in the URL or query and press Alt+Enter which opens that URL or query in a new tab.

And even in Firefox’s Private Browsing windows, I have this in my userContent.css so that I get a blank page there too (I started doing this when they put an ad for their VPN service, but then like Haman of old scorned to kill just .vpn-promo):

  @-moz-document url("about:privatebrowsing") {
      body {
          display: none !important;

Empty tab, with Firefox containers that automatically capture all google searches and open them in new tabs. That's what I have set up on my personal laptop.

For me I have 3 variations. Blank page, some search landing page, or my.yahoo.com, thought the last one I am moving away from as less sites have RSS feeds.

I use the empty dark new page extension for chrome/brave. The empty new tab was too bright for my dark environment.

I've built a start page a while ago, if you're interested you can change the config and use it yourself. https://github.com/Quintenps/Startpagev2

What I really like about my personal start page is it's RSS feed. I found this article through that :). Other features are of course the bookmarks and light/dark theme.

Don't forget to use new tab redirect (my favorite) https://chrome.google.com/webstore/detail/new-tab-redirect/i... it highlights the URL bar so when you're not interested in clicking a bookmark you can do a search query right away.

Just to contribute to the general discussion, I use Bookmarks Home add-on for firefox (https://addons.mozilla.org/en-US/firefox/addon/bookmarkshome...). It turns your bookmarks into a homepage. You can customize which bookmarks folders appear and tweak the css. You can also save the page to html and turn off or remove the add-on if you like.

It does not include widget support though, so it doesn't address all of the issues mentioned in the original post.

I have a custom built system: https://github.com/satran/edi It does two things I have longed in other systems:

- uses plain text files as storage

- embedded option to run shell scripts while rendering. Eg `!date +%D` would execute date and insert contents.

The part of using text files was that I can leverage unix tools. This allowed me to grep for todos, follow up things. Keep a format that works for me.

To your question about widgets, it mainly renders Markdown dolls so adding HTML should be simple.

I built one! I’ve tried to monetize it but I’ve given up on that. This is why there is literally nothing on the home page except a login link, which you’re free to try out.


Anyway, if anyone’s breve enough to try it out, I’d be interested in your feedback! Always wanted to make this a tool for teams to share their common bookmarks and links with one another.

I have a chrome and Firefox extension too to ensure the new tab page is set to homepagr. It also has screenshots of what it looks like after logging in.


I used speeddials for some years, then some other obscure addons and local html files. A few years ago, via G-Hacks, I found Humble New Tab Page[0], and it's been love at first sight. It has some little quirks if you are clumsy as I am and move a folder to another column, but it's not that hard to undo by hand. As a plus, it was a good excuse to bookmark frequent pages and put them inside folders.

[0] https://addons.mozilla.org/en-US/firefox/addon/humble-new-ta...

you can lock columns!

New tab page or more recently I've set my start page to a procedurally generated weather forecast image file hosted at weather.gov it works really well and it loads instantly which is critical for any start page in my opinion

If you right click on the chart and click show image, you can set that as your start page. Viola, the fastest weather forecast start page.


That's actually where I first used my username. It was dec0dedab0de.local And the server had the same mac address, which I thought was fun. It's been over a decade now, but I used a locally hosted media wiki instance, and had some bash/python scripts running on a cron to scrape various sources and update the wiki.

I wouldn't do it like that now, but the ability to quickly make wiki style edits is very useful. Plus having data stored locally before you need it is very convenient, and comes in handy during the occasional outage.

I use a small Ruby script that fetches some RSS feeds and creates a static HTML page with that content. The script gets executed via cronjob and is hosted locally on my machine, served via python's integrated web server. That way I have basically no loading time when opening a new tab and I'm independant from 3rd party services that close down or change in unwanted ways.

I use the 'New Tab Redirect' extension to set a local web page for new tabs in Chromium.

The last thing I want to see are widgets, data feeds, "suggestions", etc. Instead, I use Google Earth's chrome extension called Earth View that just shows a pretty picture of the earth, somewhere.


I made my own[1] as a Chrome extension.

I had one[2] that I had also made with lots of nice widgets like you are suggesting, but I realized that I wasn't using 90% of them, and so I reverted to something simpler.

[1] https://github.com/duiker101/takeoff

[2] https://i.imgur.com/qwIxg6a.png

I built swiftjectivec.com using Jekyll and Netlify. I’m in the iOS world by trade, and over the last decade web technology and the flavor of the week has changed faster than I care to keep up with. So this simple, dare I say “dumb” setup, is perfect for me. I also use the same approach for stuff I sell too, such as bestinclassiosapp.com

For me, the simplest thing with the smallest amount of failure points is key.

At my job I made a "startpage" on our shared drive. Just an index.html that most of the company now uses. It contains links to all our internal tools en company sites. Layout is a simple css card grid. Its grouped per department so a specificatie link is easy to find.

Out of all the things I created I still get the most positive feedback on a single html file I mostly created for myself.

A few weeks ago I did some research and started using the Toby tab manager plugin for Firefox and Chrome: https://www.gettoby.com/

I set up a "Frequent" tab group at the top, which has the pages that I often go to but that have weird URLs that I always struggle a little to find the right URL.

I really started using it for cross-machine tab parking. I always end up with a ton of tabs open across 2 chromebooks and my work machine, and "OneTab" helps, but has no ability to manage across multiple machines or browsers. With Toby I created sections for "Tooling Research", "General Work Research", "Logging and Monitoring", and individual projects that I seem to always want to get back to by leaving tabs open.

The down side is it takes a good 2 seconds when I hit "new tab" for it to load. I have been quite happy with it though.

I have a completely static, light-weight homepage, with some clean CSS styling to provide me with my stepping off point.

There are Python scripts that fill the content of the page and generate the markup for me. Those Python scripts go out and grab the price of various crypto currencies in my portfolio, several comic strips, the front page of hackernews, some cute cat pictures from reddit, my bank balance, the subjects in my email inbox, discord messages for work, the messages from my linkedin account, weather for the next three days, upcoming bills to pay, and a few other bits and pieces, along with several links to sites I regularly visit.

I thought about a Google search box but then I use Alfred/Albert/Wox, or can simply hit CTRL+L when the browser is open.

I have set up and taken off many ideas over the years, e.g. a link to open up OneNote and create a new entry, but then I just press WIN/CMD/SUP+N, or links to websites I only occasionally visit. What I have generally avoided is just having links to sites, e.g. github, LinkedIn, without those links being something that provided useful information.

Everything is stored in plain text files. I have a few .ini files that need a little more structure.

Some scripts run every few minutes (update email inbox), but most scripts run every 12 hours (crypto currency prices, comic strips, etc). My homepage Python scripts sit on my main server, and have been plodding along quietly for over 25 years, with occasional updates as I've added new features, e.g. linkedin, or changed email providers.

With separate, external scripts that output blocks of HTML, if one of the scripts breaks for whatever reason, e.g. a webiste updated or the API keys expired, nothing breaks on my homepage. It just keeps trucking. If a script breaks, it simply generates an empty HTML block.

There is nothing interactive or dynamic on the page, which means it is viewable and usable and on almost every device out there.

You can check out mine, Yet Another Speed Dial, on GitHub! It's a web extension in vanilla JS:


Perfect Home for all my browsers (https://github.com/perfect-things/perfect-home). Just displays your browser bookmarks in a nice way.

You don't need anything fancy. Start with any sample "New Tab" extension for chrome and firefox found on github, strip it back to being basically blank then add whatever you want. Enjoy! I really like my custom new tab extension and have tinkered with it for years

Since I don't have mine in a public repo, a cursory search shows a good example here. The manifest.json bit here is the only thing needed iirc.


Before you do this, consider my discovery after running one for 2 years: all the integrations break, all the time.

I’m now running weather and calendar widgets on my ipad home screen and some pinned favourites in Safari and that’s it.

I have a couple of folders in the bookmarks bar and I just Ctrl+Click them. There's always one for each project I'm working on, there's one for some admin stuff, and a side project or two.

Flat text.

I'd lean strongly toward something written using Markdown and converted to HTML, though depending on the specific configuration I wanted, straight raw HTML could very well end up being the format.

This is a case where content is vastly more significant than presentation or tools used, and simpler is better.

Some might also use tools such as Emacs org-mode, Joey Hess's Ikiwiki (https://ikiwiki.info/), VimWiki, or the like for a more structured set of pages rather than a single page.

I have my own system (https://domovik.app/, https://github.com/domovikapp/), which displays shared reading lists and remote tabs/bookmarks from all my browsers. It does not integrate other data sources, but I can quickly access those with the bookmark bar.

Have you thought about simple iframes?

For example: https://random.vodka-pomme.net/

I use nightTab for that. It allows me to have collapsible categories, set custom color for each item, etc. Additionally I can export/import existing configurations.

[1] https://chrome.google.com/webstore/detail/nighttab/hdpcadigj...

This is my personal Start Page:


It's built with a simple single file PHP that loads a list of links and formats them into collections of topic cards. The edit button lets me update the links file where-ever I am.

It's held centrally on a spare domain, and is set as the home and new tab page on all my machines.

I don't really have a start page, but I do use bookmark folders quite a bit for a similar purpose. For example, I have all my analytics links (Google Search Console, my own Matomo, Google Trends etc.) in one such folder, and when I need my data, I middle-click it (yeah, I'm a mouse guy), which opens all the pages in different tabs.

Super simple, ultra-low maintenance, gets me 80% there.

I just built a static page with minimal JavaScript to put up a list of links to my tools (Gitea, Jupyter, etc.).

Don’t overthink or overdesign something that you will need to use from any browser on any device (my concession to design is using some Material icons, but even then I’m not keen on having the page fail to load because my Internet connection is down).

My subscription to http://start.me has been worth every penny I pay for it.

Is there an alternative that you don't have to sign up and pay for?


If you don't want to pay for it, why would somebody else?

I meant something like a FOSS framework. I know that's not free as in free beer, but I'm poor.

I don't anymore. I just keep my favourite pages pinned in a window that's always open in one of my virtual desktops so I can easily jump to them. It's easier and more readily available.

Firefox pinned pages just show the favicon so you can have a ton of them in one window. And they're not pinned in other windows so you can have one just for the pinned ones.

Pinned pages + containers + Sidebery = my current optimized browsing experience. I was, however, thinking of creating my own home page with all the pinned links to make it easier to recreate my setup in case the browser blows up or to use on a new box.

I personally aim for a startpage that loads instantly and since browsers no longer let you use a local html file as one, I've made an extension that registers a custom new tab page.

I don't use any frameworks since it's a pretty simple page, essentially just groups of links. If you need to, you can always use something like fetch to load external resources.

I'm using a local html file as a start page in Safari right now, and used the same file on Windows (Firefox) just a few months ago.

I believe Firefox and Chrome do not allow you to set a local html file as a new tab page. You can set it as a home page but then you need to manually navigate to it after creating a new tab.

I use Chrome. I build a static HTML file and have set a New Tab page policy[1] in my paid Google Workspace[2] admin console to use this static HTML file via a file:// URL.

[1] https://support.google.com/chrome/a/answer/2657289#zippy=%2C...

[2] https://workspace.google.com/

Now I had to try. I can make Firefox to open my Startpage whenever I open a new window, but not for each new tab. Chrome only as the first window after I start the browser. (MacOS)

Would you mind sharing a link to your extension?

I used to have a flat static html file where I pulled in various RSS feeds using Google's old RSS Javascript API. Yahoo also had a neat library called pipes that allowed you to do something similar.

TBH i would avoid self hosting, as in my experience whatever middle point you will leverage for your feeds will end up being deprecated/sun-setted or whatever

If all you're after is a static html file and it's only used as the home page for one machine, just save it on disk somewhere and access it through the file:/// protocol.

I forked https://github.com/antonycourtney/tabli to show the same UI on new tabs as well. It's a good enough solution to tab overload and helps me organize and re-open the appropriate contexts to work or research.

I built mine to learn Angular, then ported it over to React. I had some help building some customization options like color/background selection, and have it set up so you can log in to GitHub and backup/restore your bookmarks to a Gist.



I used to hand craft an HTML page full of links that I used daily. Something that looked like a prettier Craigslist, and was static, fully enclosed CSS, inline with the HTML.

Then, I realized that I wanted to store more information than just links. But I didn't want to deal with all the JS crap or content management systems. I knew about mdBook from my dabbling in Rust, and decided to try it out.

Now I have a nice "book" instead of a home page, and it's multi-page, static, fast, portable, and easy to use.

The only drawback is that I can't use it on an iPad or iPhone, so if someone has suggestions on that, I'd love to hear them.

[0] - https://rust-lang.github.io/mdBook/

Years ago I wrote one as a side project, which I hosted on a desktop computer.

Now I just use the default browser start page, and periodically tweak my bookmarks bar. I make sure to turn off news articles / links, because I often get distracted by them when I'm trying to work.

I just use bookmarks, and open my 'Daily' folder each morning which, as the name implies, opens up the sites I read each day. If you want something fancier, more power to you, but I don't have a problem with simple bookmarking.

for years now my "personal home page" has been a TiddlyWiki[0] collection of notes and bookmarks. Simple, lightweight and very useful.

0: https://tiddlywiki.com/

I point my new tabs to Paperback (https://readpaperback.com/), which rolls up anything I’ve marked To Read in Pinboard.io and presents it nicely.

I used to live in Netvibes.com, looks like it still exists and has a free tier.

use to use netvibes a lot.. and pageflakes.. and my.yahoo.com

LOVED these.

then as someone mentioned above thread social started to wall the gardens..

other feeds became harder to find and some stopped working.. some over inserted crap.

I really hope rss comes back stronger than before, those were good days!

Mine is just html, css, and javascript. I have a couple widgets which use iframes. hosted on github. https://jccalhoun.github.io/

Haven't had one for a (long) while but centuries ago I used to set it to:


Amazingly, it still exists and appears to be up-to-date.

In Firefox I am using the "New Tab Override" add-on together with a static local HTML file that I edit "manually" in a text editor with just HTML syntax highlighting.

Last time I had a personal start page was during the windows 2000 days, it consisted of a few HTML files in my Documents directory, it was plain HTML and just linked to stuff.

Here is mine in its entirety:

<html><head><title>~</title></head><body bgcolor="black"></body></html>

I just have my browser open the tabs I had open when I last closed the browser.

I have two or three specific sites always open in Firefox and a half-dozen or so in Vivaldi.

I have raw html in one file, which contains a list of named links and a bit CSS from one of those "This is a motherfriendly website" variants.

I like the simple system of DokuWiki, no databases.

Never thought of this until I read this thread and now this is going to be my next fun hobby project for myself. Thank you!

Create a Notion account. There you can create a password protected homepage with all the power and features of Notion.

I use the free tier of netvibes I made a page containing bookmarks, emails, notes, a few RSS, my own perfect start page.

https://yup.is (Business News & Search)

I don't even use my custom startpage anymore.

It is just static HTML with some links + some style to make it look nice.

Ditto. I created my own startpage, just a plain HTML here and CSS there. Took me a week to learn how to do HTML and CSS (well... took me three weeks to figure out how to use CSS).

I went with static HTML because I want something easily editable and my memory is shit. So I need something that I can easily edit it and portable. I have several desktops, so I have my html page in my OneDrive and have my browsers to use it as the homepage.

I use the Custom New Tab URL extension that's set to my Notion page where I organize my projects.

notion with links to various todolists, calendars & note taking areas & new tab redirect

mine's built in Svelte/Sapper with Airtable as the CMS. Sometimes I just use Airtable directly, but Svelte gives me a better interface. Hosted as serverless app on Vercel.

I add to the start page (which has devolved into a favorite links page) through a bookmarklet

I use simple TODO manager in local HTML file with local storage for data as the start page.


That’s the only home page I want to have set on any browser I use.

I used momentum for a while. Not that flexible though. Maybe worth a look.

Personally, I use Vivaldi, which has a simple (but opionated) start page

I use Caret Tab. Nicely configurable, syncs with browser settings.

I don’t, I type into the search bar and let my history do the work

I just restore the last session to reopen all my tabs.

I dont, it's just distraction. I have bookmarks


Make a "Personal Start Worksheet" instead.



I use multiple profiles in FF and my start page is the profile selector.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact