Dec
26
Yesterday, there was a big discussion on Twitter on how hard it is to start hacking on a js project. One comment by Dan Abramov struck me in particular: "Right: don’t use tools, face a problem, choose a tool or roll your own. Wrong: learn tools that don’t solve your problems, hate the tools."
This is spot on. All the solutions presented in this thread do not solve the problems I have when I'm hacking on a new project.
My dream PHP Setup
Back when I was 14, I had the best setup I've ever used in my life. Here it is:
- Launch WinSCP and connect to
fooo.fr
. - Create a file
test.php
, write<?php echo 'Hello World';
locally with EditPlus 2, press cmd+s to save, wait 0.5 second for the upload. - Open my browser and go to
http://fooo.fr/~vjeux/
. Click ontest.php
. - ?????
- Profit
Challenge
I want to get the same attributes but with JavaScript and React. Here are the constraints:
- No setup: I'm happy to have to setup something initially (dedicated server, apache, php...) but nothing should be required to create a new project. No
npm install
,react-native init
, creating a github project,yo webapp
... - One file: I want to write a single js file to start with. No
package.json
, no.babelrc
, noProcfile
... - Sharable: I want to be able to share it with a url without any extra step. No
git push heroku master
orgit push gh-pages
. - Keeps working: Once online, it should stay there and keep working 6 months later. No
npm start
to run it, no special port that's going to conflict with my 10 other prototypes... - Not generic: I don't care about it being generic, I will use whatever transforms you decided. Happy to write js without semi-colons and using SASS for my CSS if you checked all the boxes above.
- Not prod-ready: This setup doesn't have to be prod-ready, support unit testing or anything that involves it being a real product. This is meant for hacking on stuff. When the project becomes good, I'll spend the time to add all the proper boilerplate.
So, that's the challenge. Can you make it happen?
If you liked this article, you might be interested in my Twitter feed as well.