Launch HN: FlyCode (YC S22) – Let product teams edit web apps without coding
Non-technical teams frequently need to edit the copy (text), images, and links that appear in a web app. How to manage these has long been a pain on software projects. You can keep them separate from the code, in some form that non-programmers can edit, but this adds a lot of complexity and is usually brittle, as it can bypass the regular development workflows (CI, staging envs, deploy previews). It’s simpler to keep them in the code, but then only programmers can easily edit them. Everyone else has to wait to get their changes in, plus the devs have to do a lot of edits that aren’t their main work. This slows projects down and is expensive. It also means that product/marketing/UX teams can’t do things that require rapid iteration, such as sophisticated forms of A/B or usability testing. This limits their work and ultimately is bad for both quality and revenue.
There have been many approaches to solving this dilemma, including custom built admin tools that are limited in functionality and require maintenance, offloading to CMS that require heavy integration, are normally used for simple static apps, and bind your stack to their SDKs. Or wasting a developer’s time to do it for you…
We took a new approach by automatically analyzing a codebase’s structure, similar to a compiler. This allows us to automatically prepare a project-specific version of our platform which product/UX/marketing teams can easily use to edit their text and images. We programmatically turn those edits into code changes. Our GitHub bot then takes these code changes and creates a pull request just like a developer would—but without the latency (and boredom!). Developers retain codebase ownership, while non-developers become individual contributors to the dev process, just like others.
We use well-established practices for parsing and editing source code (like https://github.com/facebook/jscodeshift), covering most of the major technologies used for building web apps (React, Angular, Vue, and Ruby on Rails included).
Once our software has parsed your codebase, it generates an editing portal for your app that teams can easily use to find, manage, and edit product copy, images, and links, and then auto-generate PRs. You can edit product copy regardless of whether it is in resource files or hardcoded (fun fact: some of the largest and fastest-growing tech companies have most of their strings hardcoded!), and you can replace and upload new images and icons to your product.
The integration with GitHub (https://www.flycode.com/developers) took us a long time to get right. There’s not a lot of documentation around integrating GitHub to platforms, and things like connecting an org or connection requests turned out to be non-trivial. We're proud of the result because unlike with other tools, you don’t have to do any significant integration work.
Our GitHub app finds texts and images in the source code and sends them to our platform (you have full control of what and where we scan). Once a user requests a change it updates the texts and the images in the codebase and creates a pull request.
We did a Show HN earlier this year: https://news.ycombinator.com/ite...
56 comments
[ 0.38 ms ] story [ 108 ms ] threadThe popularity of this just means your marketing bosses will use it to ram this concept down your throat. One of the saving graces against marketers is them not having this sort of direct line to customers. That gate is an important one.
I’m just giving you my experience. You don’t have to like it.
If a marketing team is so incompetent they manage to tank the company by changing copy and images, well, that's a deeper problem and they should be fired, not babysat.
How that mentality works out in the real world: https://en.wikipedia.org/wiki/Cambridge_Analytica
It will allow product owner and his product team to make instant changes to their product, save precious developer time and reduce the amount of people required in the loop. All this product brings is benefit of saved time and resources.
It does not propel the marketers' feel of power. I keep thinking this tool will help the non-technical app owners to instantly make necessary changes without having to pay for this service and wait few days.
At my current employer the main site is just a marketing site and our approach from the folks who write code is "You guys edit that however, leave us out of it.". We gave them some tools / training to do so. Side effect is those guys just do their thing with what they have and don't bother us about dorking with the marketing site for endless silly reasons, back and forth and so on.
If we were bigger / had a lot of other UI change requests, I think something like this would be very interesting to mitigate all the text / UI churn.
Is there a constant somewhere I can import in my unit tests so I can say “expect this header has no embedded js but says whatever Dave from Marketing wants”
Do you limit their changes to just plain text? Then they ask "Why doesn't the website look like the Word Doc I made? It looks perfect in Word!" Where is your God then?
Not necessarily the content, but that the correct content is where you want it.
It's currently available as part of an early access program that you're welcome to join :) You can contact us via the chat in the platform, or email hello[at]flycode.com
I’m curious about a few things
Isn’t it better to have a distinct ‘playground’ for marketers, PMs, UX/UI (separate from what Dev is working on)?
Shouldn’t PM/Marketers be dealing with very minimal stuff (like mock-ups, Visio Diagrams)? My immediate thought is that having these folks spend considerable time on (what you have described) almost seems like a waste of man-hours because at the end of the day, what Dev builds for code will be way better and efficient.
Finally, how do you plan to compete with tools like Figma and others which are positioned to allow the people you’re targeting create quick mock-ups (personally, I think those Apps are also not that easy to use)
We'd like that other stakeholders in the company to actually be able to contribute to the codebase and make actual product edits, as well as creating mock-ups.
- The fact that the organization has to open their GitHub to your infra
- The fact that by reading iddan message: "We see Product Managers, UX Designers and UX copy editors editing copy and images through the platform." it seems that you have access to client data in read at least
For all of those concerns do you offer an on-prem version of the solution for organizations that can't on don't want to deal with that?
Thanks it looks like a very interesting product
Nitpick: “developers time” -> “developers’ time”
Next thing we develop would be a HN post editor XD
How does this differ from competitors in this space, e.g. let's say, TinaCMS?
We see a lot of opportunity in managing resource in git and are betting that the industry is going there, so shout out and love to the TinaCMS team and other players recognizing that git is where app resources should be managed.
It seems to have a similar goal of allowing product and marketing teams to update web pages with little to no code.
But just to clarify one point: Plasmic (importantly) doesn't require using any specific libraries. You can bring your own arbitrary React code.
Last thing - git work flow. Your code -> you are approving the same way you work today
(1) Plasmic does support git as well.
(2) You can also continue to edit your code.
(3) You can use Plasmic as a CMS, or as a code generator.
- FlyCode focuses on text/image changes within your existing code.
- Plasmic lets you create and edit UIs using your React components as building blocks, but doesn't try to edit your existing code.
For making text/copy changes, there's also another product that uses your Figma designs as a source of truth:
https://news.ycombinator.com/item?id=27142930
How do you deal with resource files for multi-language apps?
Mazal Tov for your launch!
I wouldn't mind if devs only needed to make a one-time change and then product could run AB tests on any page they wish.
Thanks!