This is a nice idea, especially for a case where a website is collaboratively edited. I don't love Google Docs for solo projects, and I don't enjoy using it, but its collaborative editing features are so good and reliable that I can't escape it. Being able to suggest and accept changes with commenting among a group of people would be really nice for a website for a collective, say.
That said, a bit of small, hopefully constructive feedback. The impact of this would be a bit bigger if there were more blog posts, so that by the time you reveal you're using google docs it feels more like a practical application and less like a very quick demo. Also, while I understand that there's a sort of "coder who doesn't do design" aesthetic, it might be good to at least change the colors a bit so that there's a bit more magic of transformation. This looks a bit too much like, well, a Google doc, and you want to establish that something cool is going on that couldn't be done with just an index of publicly visible google docs.
We’ve been using a shared Google Docs folder to manage our app’s release notes. We parse the folder in reverse chronological order, paginate 5 at a time and use their doc to HTML converter API. We then cache in Redis for performance. Works great and keeps the development team away from having to update it. Product/support can edit to their content!
Oh yes. We used to be lazy developers and do the bare minimum. We sell a SaaS to the SMB field and the feedback we got was that they wanted to know _exactly_ what we were changing in the app. So now we produce full sentence (or paragraph) explanations for every JIRA card that gets into production for our users, including links to updated documentation, training videos, screenshots, etc.
That's actually a really cool idea. We currently use a rendered Markdown doc but as a team who can forget and then have to do another commit, this would remove the friction required.
Not to be confused with Google Colab! Which provides shared Jupyter Notebook, which also can be great for writing markdown cells, with graphs and code interspersed.
Reminds me of generating webpages from Microsoft Word. The issue is that the HTML looks pretty awful. For example, on the webpage, there's a bunch of tags that don't do anything and the inline style makes it difficult if you wanted to change the font family or color.
The alternative is to hook into the Google Docs API which gives you a more structured response which you can then self style.
Exporting HTML was the easy way out for me. I haven’t investigated the accessibility impact but the file sizes are minimal so it didn’t feel like a massive trade off.
This is great, albeit very clunky (for reasons described others, e.g. inline CSS issues).
What's amazing to me here is that I've gone through every single link I can find in these comments and haven't found anything close to a plug and play approach to creating static websites generated from Google Docs (say 1 hour at most for a fairly technical person to set up; just stringing together configuration options in e.g. Netlify, Gitlab, and perhaps Google Sheets for routing).
This is not just academic. In the early days of the US COVID pandemic response, I helped instigate the creation of n95reuse.com — a collection of the best public information available on reusing n95 masks, which was used by a number of hospitals (now thankfully the more authoritative n95decon.org exists).
This worked OK as Google Doc redirected from a memorable domain, but would have been much better as a dedicated site. But there was no good way to maintain that as we were rapidly gathering feedback and suggestions from folks on the front lines, and it would have been too much overhead for our small bandwidth constrained volunteer team. Our less professional site with a long redirected URL means that less people saw this, and more healthcare workers were likely using more unsafe protocols (or were spending crucial time replicating our research; we saw this everywhere). And people likely died.
And this is not the first urgent project I've needed this sort of tool for.
So if someone has done this plumbing and documents it, ideally with at least one good theme, please please, let me know (see profile for contact info, or respond to the thread on this here: https://twitter.com/metaviv/status/1245147106697863168). At some point I might figure it out myself, but have not had a chance yet.
We've been working hard on https://nocode.works - which turns Google docs into nice looking websites - it's not pluggable yet but it doesn't require any setup on behalf of the user.
We do have a template system though so it would be possible for a frontend dev to design their own wrapper for the content.
For now "See, edit, create, and delete all of your Google Drive files" is definitely a deal breaker for many, but if you can restrict to one folder, that would be amazing. (As a user, I would currently use a throwaway account, and then share that Google folder with a real one).
Also wasn't obvious how to remove the page footer; did I miss an option?
Yes - dealing with access to a users entire drive is something we are looking at to try and get working for exactly that reason - the words `this app can delete all your files` is scary :-)
There isn't an option to remove the footer but should be +1 added to backlog - thanks again!
We have a Facebook page for live questions, but fast figured out we needed a place for best practice that could be edited by everyone.
For orders we use Google Sheet and had to split the sheets in regions because it’s gets slow if more than 300 people edit on the same time.
Got regional coordinators to help with the coordinations both within the regions and send excess shields between the regions.
My first encounter with a docs -> website was the now-defunct joelewis' hexopress.com. The code; however, is opensource [0].
There's a dated, unmaintained Google Docs to Markdown converter [1] which can be used as a source for a static site generator like Hugo [2]. This is particular interesting since folks can style content as they normally would from within Google Docs and have it show up with the same styling on a webpage, rather than write HTML themselves.
I wish IDEs (with collaboration from git) made it clear what should and shouldn’t be checked in to source control (or rather they had a way to do both) - where I want to store per-person level settings as well as shareable settings.
In this particular case though - IntelliJ itself would have prompted him to add these files - so those are in fact shareable files
Note: I do know IntellJ purposely excludes workspace.xml , but these things should be handled much more explicitly and IDE should provide better conventions and guidance.
The .ignore plugin and the GitHub repo it is built around I think do the job well enough by having a list of suggestions. I may actually have a private repo and have all the settings on both computers that I use.
Firefox removed the path in 2018 while in private browsing, now their tracking protection is in normal mode too so I imagine it will happen there as well. I'm guessing the only thing stopping them from removing it totally is some sites break if they cant see the domain you came from.
Hah fortunately those secrets were never actually in use. I just did the unspeakable and quickly rebased master to update that though so thanks for that!
I wasn't planning on sharing the code at first so I probably didn't give it as critical an eye as I should have. This was also a learning project for me to try out Kotlin so I'm sure there are a million things others would do far better.
It is soooooo easy for something that was just an experiment to get published somewhere, that I have learned (the hard way, multiple times) to never commit any secrets to a git repo. Well, intentionally that is... but if I do it by mistake, I treat them as compromised and change them.
Instead I just create a .env file and put them there. It's a bit more boilerplate but it is worth it when I don't need to decide between keeping secrets and having code history before publishing. And env vars are supported everywhere afaik.
I recently used Google Sheets as a CMS for a couple of projects.
In my case I had a server-side script which read the sheets, converted the data to JSON and saved it on a file which was then fetched by the JS client. The conversion only had to run when there were updates (e.g once a day).
It was really convenient in my particular case because all users where familiar with Google Sheets, already had users and passwords, and I had good granular control over permissions.
In addition to using Google Docs for articles that don’t fit nicely in the CMS, we also have our internal newsroom wiki powered by Google Docs, too. We’ve open sourced the code for that here:
After building a number of [1] projects that are powered by Google Docs, I recently realised that it also means that countries (like China) where Google is blocked, won't be able to access your content.
Have you visited the Cloudflare main website by chance? cdnjs doesn't serve cookies unless you've visited cloudflare.com yourself. Either way the cdnjs jquery isn't a tracker.
Instead of generating HTML from markdown & sticking it in a template, your posts are HTML and you stick them in a template. Instead of hand-writing the HTML, you're using an HTML WYSIWYG editor (google docs).
Unless I'm missing something this is a static site generator. And if it suits your needs that's fantastic, sometimes I feel like markdown & git tracking is overkill as well (what I do). The primary thing holding me back from this is lack of code snippets.
Way back I considered using Microsoft Word as my content editor for my blog, and wrote a PHP script that converted .docx files to static HTML. To publish all I had to do was upload a new .docx file to a given directory on my shared host and wait for the script to run.
It converted the Word "Heading 1" etc styles to some CSS class, and had support for extracting inline images etc. I relied on convention for certain things like post title, and it didn't support too fancy things in the Word document.
At that time .docx was rather new, so I wasn't sure if it would stick around. Also I wasn't sure this was the best idea ever, so I ended up with something else. But it was a fun adventure.
Well the key point was to use Word for basic content editing and layout, but have control over the styling on the website part of things (ie via my own style sheet). As I recall the generated HTML from Word was quite a mess, and it would be non-trivial to change the styling of it.
It also allowed the pages to be easily integrated into my blog, with first paragraph being visible on the main page etc.
Mostly though it was just a "can it be done" experiment :)
You can do this with Emvi [1] too. It works like a headless CMS. I wrote a wiki for a German gaming community [2]. The project is available on GitHub [3] if anyone is interested and can easily be adopted to your own project. The articles fit a blog very well as they don't use pages and therefor are continuous. The API spits out clean HTML.
Hey all, keep in mind that this is an experiment and the OP is therefore looking for input from users. Don't look at it from a finished product point of view but as a starting point and give your ideas.
I think this is a great solution a quick in office CMS for in house projects.
I've always liked the idea, but i've never been keen on using it once I hit that "See, edit, create, and delete all of your Google Drive files" permission.
I'm not that familiar with how Google provisions various permission schemes -- is there any way to do what you do with a bit more restrictive permissions than the manipulation of the entire Drive account?
The spreadsheet not being normalized is a bit annoying, but I could fix that if I really wanted to. All in all, I actually find using Google as a data source like this works pretty well.
What add-on are you using to do that? I've been playing around using Lovely Table and Awesome Table for this purpose but not really sure which one I ultimately want.
The site is built with Gatsby using gatsby-source-google-sheets. The source is here: https://github.com/city41/fgbg (warning, it's pretty terrible. I built this thing very rapidly as at its heart it's really just an experiment).
Blot.im does this but with dropbox and its amazing. Since you use word docs instead of g docs the formatting transfers over perfectly. Super easy setup and $20/yr. I’ve been using it for 2 or 3 years and it’s great.
Npzero.com is my blog if you want to see an example. There are much prettier themes you can choose from as well. I have a chrome book so sometimes I write in g docs, export to word, and upload to Dropbox’s webapp and make final adjustments in their online editor. No affiliation, just a great product.
Cool idea, but I worry about over reliance on Google or other big tech players, especially after their recent steps to ramp up censorship. Another example is that Medium blocked many informative COVID-19 posts recently despite them being thoughtful and necessary discussions, especially given the repeated failings of the WHO. What’s a great blog platform that features a lack of censorship or protection against censorship as a feature?
So there's a few things I'd take issue with here. Firstly, writing a static site with a little bit of CSS is easier than ever. Not only are there lots of neat CSS files that will help you, but browsers actually are fairly good at functioining more or less the same. There was a time that writing corect CSS was a real art, but that's not really true as much today. Secondly, I think this is one of many examples of creating an incredibly complex solution to a trivial problem - the initial problem isn't a problem, and linking into an incredibly hefty cloud based system just seems nuts in my opinion. Finally, who exactly is looking to try and increase their dependence on google?
I think part of my opinion comes from that latex/vim bent, where you're using very programmatic, specific idioms to get what you wrote, and if you're less comfortably with that then maybe you appreciate all the work of building some google docs based on monstrosity, but the more experience I've gained, the more I've learned to use the right tool for the job. Google docs isn't a blogging tool, so don't use it as one.
You misunderstood the problem. The important part is not writing the html, it's writing the text. This solution is centered around the best collaborative/cloud text editing that you can find for free. How does your solution address the scenario in the article of trying to work on the text of a post from a tablet?
For me the Google dependency would be bothersome, but the reality is I still end up using Google Docs for authoring text collaboratively. (At least where Overleaf won't do)
I just don't understand how that's a problem, you can write the text in google docs, and copy/paste it into an html file and stick in the tags if you really want. My point is that going from the content you want, to the static webpage you want is probably 2 minutes work at the very most, and if that's a significant chunk of the time it took you to write the blog, then I'm not sure why you're bothering to write the blog in the first place, just use twitter.
Plus a one-step deploy process made in Ansible by a friend of mine.
My take is that while Sapper isn't exactly production-ready, it's a otherwise competent static-site generator.
I write my posts in markdown and the system adds styling and modifications like target=_blank for links in a consistent manner.
Best thing about it is that I managed to use the experience from building my blog to help a friend who's an artist to set up his webcomic - also a static site.
The friend in question knows how to use FTP but that's about the extent of his technical skills, so the process involves him modifying a JSON file by adding an object with the comic title, flavour text and of course image URL to an array, running the generator and uploading the result.
The landscape of systems for this use case is pretty horrible, so this approach proved to be more pragmatic.
God forbid if Google lifted their hands some day, can you even imagine how many million people will be impacted due to how many services ranging from emails to map apps to cloud services to web services, etc? Is it wise to give one entity power over so many things or its better to encourage a decentralized structure where multiple organizations control only bits of the pie?
Have you looked through the takeout outputs though? They are completely worthless to most users. It's funny to me that a bunch of Google devs built the functionality and thought "ya this will do".
I mainly care about Google Docs and Sheets, they're exported as Word and Excel (and there are other options if you don't like this formats), and the random sample of docs I tried in the output worked fine in Word and Excel.
Try restoring it. A backup is only good if you can make it work again, and an export function is only good if there is something else that you can import it back into.
I guess I'm missing how that relates to the comparison I made.
Google at least lets me back things up.
Most services do not allow it at all.
So there's no restoring anywhere else at all, no chance.
Having the data I could at least have a chance that some service might offer a rebuilt import option to pick up those google users ... or I could build it myself / at least have the information.
To me that's still leaps and bounds better than any other options that I know of.
The GDPR obliges all companies to provide an option for users to receive all data held on them; takeout and FB'd equivalent were implemented in response to that.
For all other companies, at least if you are in the EU, you should he able to request the data by eg email and they are obliged to send it. You just don't know what format you'll get.
Yeah, a lot of exported data is basically unidirectional.
Google Voice exports your texts into a clumsy pile of HTML files. That's why I wrote a parser to convert all of your Google Voice messages into structured data.
Sure, it is a genuine concern. But I find the context for the comment here bit funny considering how much the world runs on top of gdocs etc, the risk of losing the source of personal blog is drop in a ocean.
And while there of course are no guarantees, I at least would expect fair warning before stuff like docs is killed.
I don't think the cost of losing things is as high as you imagine. You can use X until it fails and then you can use Y.
I also don't think your doomsday scenario makes much sense either. What do you mean "lifted their hands" and why would it happen out of the blue with zero warning? Though I'll repeat: so what?
I don't think a decentralized system is much better in this regard. It just means things rot at a more staggered pace. Service A shuts down on year 0, service B shuts down on year 10, etc. It's just a different trade-off, not the panacea we like to pretend it is.
You mean like the US did with AT&T? I'm not sure if they 'have the balls' currently, but they have in the past and it's not inconceivable they would do so again. Microsoft came close to it as well.
I do point out that US vs AT&T did first major anti-trust settlement in 1913, and the breakup ultimately happened in 1984, or about 70 years later. So maybe we'll see Google breakup too in 2084 or around that time..
Nations are ultimately made up of people and they are subject to peoples' pressure. Its the people who we must convince and wake them from their deep slumber.
Well, I don't need to trust Google's employees, I trust its shareholders wanting to make money, which will never stop.
Since Google's popular products all contribute to making money in the end, they're not going to stop. Shareholders just wouldn't let it happen. There's a chain of accountability here that goes employees > C suite > board > shareholders.
So I don't quite see what situation you're worried about here.
That's just so factually untrue it's hard to know what to tell you.
Do you understand how corporate boards work? How large shareholders get their own board seats? How boards hire and fire members of the management team?
The idea of a toothless board is a complete fiction. I don't know where you got the idea, but it couldn't be more wrong.
(Perhaps you're confusing it with boards where a single shareholder has more than 50% of shares, thus making the board largely irrelevant because the shareholder controls it. But even in that case, the CEO effectively reports to that shareholder, and there have been many, many, many cases of underperforming CEO's being fired. It happens all the time.)
if by some magical event Alphabet/Google is able to shut down their free versions of their Office apps and rely solely on G Suite/YouTube/Waymo/etc without losing money, I don't doubt they would do it. If that event will ever happen is still a mystery and is probably unlikely to happen within my/our lifetimes.
Google put an annoying link on there called "Report this site". Maybe there's a way to take that off now but that really sucked. What happens if some idiots report your site for no reason?
I’ve been thinking about going the other way a bit recently: having bots consume input from and add their output to a Google Doc.
There are so many processes in most businesses which involve many humans collaborating on templatised documents. Google Docs/Sheets fits into these workflows very well, but there’s often scope for some partial automation in there too - pulling information from databases and outside sources and keeping it in sync, etc. Developing custom web apps for each case is too much effort for too little reward, takes users out of a familiar (and well-liked) interface which updates in real-time, makes you reimplement permission models, etc.
Not something I’ve explored properly yet so I don’t know if the APIs are rich enough to make this easy, but I would really like to give it a look.
I used that approach for a reporting system and it worked pretty well. It was easy to hit the sheets api rate limit but it was just a matter of waiting a bit between requests.
The node script was triggered hourly with Heroku scheduler.
I'm finishing up with a simplistic template for Zim wiki. That will enable me to have a website with nice Wysywig interface divorced from web bloat and limitiations, but also some of its convenience.
Love using Docs as a source. A while back I wrote a service[1] which creates an API using Google Drive and Docs as a source. Docs are naturally pages, and the Drive folder structure builds the hierarchy/tree of pages using a pretty simple naming convention (Mainly for ordering). The CMS/collaborative aspect is great. Some things that aren't ideal are:
- Seeing print-style page breaks in docs
- Formatting images. Although, having Google host them is nice
- The html Google Drive generates is inlined, inconsistent, and pretty nasty. I resorted to using markdown in Docs.
Another solution that I explored a bit was using the google docs api. It returns a Json structure of the doc. I just used the drive export as a shortcut but you could totally create something neater with the drive api.
- There was a spreadsheet with the list of articles and some meta-information such as publication date, "published" flag, etc. This was then extracted with https://github.com/franciscop/drive-db on a Node.js backend.
- Then each article was written as a single google docs document, so we could edit them collaboratively.
Meta: The front-end was built with https://picnicss.com/, which is a library I also created for this project.
I've run a little round robin/bracketed tournament website through the Google sheets JSON API once. It was a really easy way to have an interface for the organizers to update scores and players.
Omg, it is quite a good idea! Was wondering if that follows the same idea as using markdown as your post, and each post is actually just a markdown file?
Here's my blog and each post is basically just a markdown file! Just wanted to share with all of you.
Some might like this adoption of the idea: I work in consulting and have to prepare presentations all of the time.
Therefore, I created a Powerpoint generator that uses a Google Sheet as a source: http://demo.inf.university
<-- It doesn't look spectacular, but it saved me really a lot of time. “Can you prepare a briefing about X,Y,Z” – “Sure, it will take -cough- about 3 days” :-)
Would be interesting with more details on how this works. Like how the URL works and how the pages are styled. Is there any services needed beside google docs, etc.
I recently learned (via Rich Harris's recent Svelte Society Day talk[1]) that the New York Times does something like this using a custom markup language called ArchieML[2].
Hi there; i ve tested the product and it works ok. Now i have a question, what is the value of this ? If someone needs to publish content online so quick from gdocs with little to no branding style, why not just share a read only view of the google doc ?
We are thinking for people writing documentation, blogs or Intranets where there are many different pages and there is a more polished sense of branding.
You are quite right that if you want to quickly publish a single page - using Google docs directly would be faster :-)
I saw someone I was working with using Google docs for seed data, I actually think this is quite cool as long as it's performed in two steps (pull, insert) as you still want to be able to recreate offline or should Google docs explode (or price or cancellation).
It would be cool if it was 100% live... Ie. with every keystroke the website is updated. Does the Google Docs API have some kind of event based notification of new keystrokes you could hook into?
I run my wishlist from a Google Sheets document. It's a bit annoying that you can't have gaps in rows in the spreadsheet, since fetching as JSON will only return up until the first gap.
This is awesome! I have a site made with Jekyll and it took a good amount of massaging to make it look somewhat presentable. I wish there was a way to integrate with Jekyll.
Also run by Google. Also subject to all their rules. But also robust with a simple clean interface.
I wish there were a simple free way for me to enjoy free speech.
I already pay for dropbox. Why can't dropbox let me assign a folder in my account become a blog.
Yeah, this is a great service but the pricing doesn't make sense (even after the free tier). 10$ a month (!!!) and it still wouldn't fit my use case with only 1500 rows. The convenience is nice but considering Google/Microsoft is paying for most of the hosting, cell computation and so on, not sure why a wrapper around an API is so expensive.
Time is money and this saves a tonne of it. You're free to code everything yourself and save that tiny amount of money of course if you like. Different people have different priorities.
i'm using Google Sheets for a Coronavirus Tracker http://amarillo.land/coronavirus.html but i'm not enthused with the performance. This looks very interesting!
That said, a bit of small, hopefully constructive feedback. The impact of this would be a bit bigger if there were more blog posts, so that by the time you reveal you're using google docs it feels more like a practical application and less like a very quick demo. Also, while I understand that there's a sort of "coder who doesn't do design" aesthetic, it might be good to at least change the colors a bit so that there's a bit more magic of transformation. This looks a bit too much like, well, a Google doc, and you want to establish that something cool is going on that couldn't be done with just an index of publicly visible google docs.