32 ms·
Luckysheet, an open-source spreadsheet
- sabellito 6y agoLanguage files blank comment code ------------------------------------------------------------------------------- JavaScript 142 54627 91825 243672 CSS 9 790 238 5908 HTML 2 10 1 43 ------------------------------------------------------------------------------- SUM: 153 55427 92064 249623 ------------------------------------------------------------------------------- without the demoData dir. that's nuts
- Gaelan 6y agoLooks like there's a lot of vendored code in src/expendPlugins/chart—maybe that's the source of some of that?
- supermac 6y agoChart is MIT license
- pinky07 6y agoIt's closer to 90k lines of JS if you exclude data and external libs, those directories: data locale demoData expendPlugins/chart plugins
- sabellito 6y agoAh good catch. A little more reasonable for a 1-person project then.
- smt88 6y agoThis may not be the most concise possible code base, but there's no way to build something like this with a thin layer of code on top of a browser. I can't imagine any similar level of functionality with a size that's a lower order of magnitude than this.
- nabla9 6y agoMaybe there is: 1. Hire Chuck Moore to write a spreadsheet in Forth. 2. Hire Fabrice Bellard to write tiny Forth interpreter in Javascript. tada.
- tonyedgecombe 6y agoExcel has 30 million lines of code, now that's nuts.
- pjc50 6y agoThat seems reasonable for a full-featured spreadsheet. If you think it can be done in 10k with all the features, go for it.
- deleted 6y ago[deleted]
- franga2000 6y agoThis is really impressive and all, but we already have a pretty good open source online spreadsheet editor by OnlyOffice and I can't help thinking where we could be if the (I imagine) pretty significant amount of work that went into this was put into improving an existing solution...
- nik736 6y agoLuckysheet comes with the MIT license.
- bestouff 6y agoI can't see why it's an advantage.
- iCarrot 6y agoI can't see why more options to choose from is not an advantage.
- brylie 6y agoMore options is good for rapid evolution of a new domain. Eventually though, we need collaborative effort to take established ideas to a mature state. For example, there are a number of fledgling open-source nonlinear video editors (NLEs) -- to name a few in no particular order Kdenlive, Openshot, Olive, OpenMovieEditor, Blender Video Sequence Editor, Shotcut, Cinelerra, and Flowblade. I say this with full respect to the authors and contributors to those projects, we just need ONE open-source NLE that is on par with Final Cut or Premiere Pro.
- franga2000 6y ago+1 for the NLE example, as it's one of the biggest problematic areas to me. What even is the difference between Shotcut and OpenShot? Both are 90% of the way to being the perfect everyday video editor, yet they both get destroyed by the first shareware result for "free video editor" when it comes to polish. But we really can't blame the authors - there's no money in open source user apps and polishing isn't fun to most people. I'd immediately jump on the opportunity to build an NLE from scratch if given the time and financial freedom, but I can't see myself digging though someone else's code and sanding all the rough edges for fun.
- deleted 6y ago[deleted]
- deleted 6y ago[deleted]
- mebr 6y agoA web-based spreadsheet, the code is under the MIT License, seems to have some (/many?) features of the commercial products.
- dvfjsdhgfv 6y agoIt looks really nice! But... The main reason I tend to avoid Google Sheets is that they're slow. Slow to open, slow to update more complex sheets, slow if you have more of them open. In general, much worse overall experience than a desktop spreadsheet, especially if you're using Firefox. So I was really hoping for something with the snappiness of EtherCalc (which is blazing fast!), just more elegant. I realize it's difficult to have both functionality and speed, so a maybe a system of plugins could be useful. Most of online business sheets I saw use just a few arithmetic functions, many people would be happy with just that.
- fakeyguy 6y agothis is quite impressive. formulas, charts supported out of the box. does it support importing xlsx and exporting to xlsx or pdf?
- tluyben2 6y agoInteresting, this suffers from the same issue I have with TeamViewer (and only with teamviewer; this Luckysheet is the first thing outside teamviewer I see this) on mac os x: if I scroll up in a document that has a vertical scrollbar, it will not only scroll up but also to the right. It happens on all the macs in the house, doesn't happen on Linux/Windows... Well, for Teamviewer; I did not test this one on all those machines yet. The problem does not arise with VNC or any other remote tech or program. I have never figured why it is and it's been there for years across different macs and different OS X versions.
- sdoering 6y agoI have the same behavior here (MB Pro 13'', Catalina). But additionally I also experience that the scroll direction left to right is inverted. I have to scroll left so that the spreadsheet scrolls right and vice versa. Not so top to bottom.
- tluyben2 6y agoYes, indeed I have experienced that as well sometimes...
- pastage 6y agoSeems snappy enough on mobile, but translation of functions seems to be missing, so the formula editor is all in chinese to me. Not sure if that is plugable in runtime. One needs to at least translate src/function/functionlist.js maybe more.. This would all be easier if this was not a Vue app, but rather HTML5 but all in all not that different from how desktop apps are made.
- smartmic 6y agoI still cannot wrap my head around why so many folks want to use such applications in a web browser. For me, web browser applications never reach the responsiveness and ease of use of well crafted desktop applications written in any decent systems programming language or even interpreted languages (not speaking of Javascript). Maybe I am getting old, but having the browser as a platform for programs is huge setback for many criteria that I personally value. For example, as a free Excel alternative, I fall back to Gnumeric (http://www.gnumeric.org/ http://www.gnumeric.org/) from time to time.
- MattGaiser 6y ago> well crafted desktop applications written in any decent systems programming language or even interpreted languages (not speaking of Javascript). These generally cost more money to develop/require ITs permission to be installed/get features slower.
- Freak_NL 6y agoSharing and collaborative editing. Being able to coordinate some process via a shared spreadsheet in a browser is efficient and resolves all issues of conflicting versions. Think of an overview of who is going to the office on which days this week (useful in times of working from home due to Corona). Responsiveness is not the primary concern here: good enough is fine for most purposes. This is not a replacement for a proper spreadsheet editor (I prefer LibreOffice myself); it's a tool to collaborate on tabular data with a group of people and minimal overhead.
- amcvitty 6y agoInteresting to note that cloud storage and realtime collaboration isn’t 100% tied to a browser-based interface though. Even though many existing apps work like that, there are desktop clients for a bunch of cloud-native SaaS (and even though some of those are Electron).
- creatio 6y ago> resolves all issues of conflicting versions. But isn't a problem in the browser, because you are always on the same version.
- acd 6y agoInteresting idea with an browser based open source spreadsheet.
- rwmj 6y agoI wish people wouldn't copy Excel (or Google apps for that matter). Those spreadsheets are terrible. It still baffles me that none of them can do sideways scrolling correctly, they are all incredibly awkward to edit, the formulae are fundamental to how they work yet hidden and obscure, they do weird "magical" stuff to strings like turning them into numbers or dates when you didn't ask, etc. I'd really like to see people explore new paradigms. Something that has the functionality of a spreadsheet but looks nothing like current spreadsheets.
- continuational 6y agoI rather like the Airtable concept - it feels like a spreadsheet, but the columns are typed, and it can do joins. It's a shame that it's so limited (50,000 rows in the most expensive plan).
- ptman 6y agohttps://baserow.io/ https://baserow.io/ is promising
- hoistbypetard 6y agoThat looks really interesting. I hadn't run across it yet. Thanks.
- hexmiles 6y agoThey really are, i want a self-hosted airtable so bad... I just found out you can sponsor them: https://github.com/sponsors/bram2w https://github.com/sponsors/bram2w
- paulhodel 6y agohttps://jexcel.net/v5 https://jexcel.net/v5
- asplake 6y agoTerrible, but extraordinarily successful.
- robbiejs 6y agoThis looks like a really great effort, better than other canvas spreadsheets I have seen. Great work!
- vmsp 6y agoI've always been curious about what data structures are used to store spreadsheet data. Are there any online spreadsheets just creating, dropping and altering SQL tables as needed?
- warxmike 6y agoKeep it up it's a step closer to free me from Google
- lasermike026 6y agoCall me crazy but I would really like a ncurses spreadsheet.
- mxuribe 6y agoMy first exposure to lotus 123 was what looked like a ncurses interface!
- laktak 6y agohttps://github.com/andmarti1424/sc-im https://github.com/andmarti1424/sc-im SC-IM - Spreadsheet Calculator Improvised -- An ncurses spreadsheet program for terminal
- smilliken 6y agoCheck out visidata: https://www.visidata.org/ https://www.visidata.org/
- chrismorgan 6y agoI will keep saying this every single time some one gets this wrong (which is at least 49 times out of 50): the only way to handle scrolling properly on the web is for your scroll events to fall onto a real scrollable area, and to observe the effect it has (e.g. apply the scroll position to what you’re rendering with). This can be tricky to achieve well when you have dynamic content that the mouse needs to be able to interact with within that area, but it is possible to do well, with careful application of `position: sticky` and/or `position: fixed`. As it stands, scrolling is nigh unusable on my Surface Book: vertical scrolling goes at a million times the speed it should, and horizontal scrolling goes a million times as fast as it should in the wrong direction. Don’t do scrolljacking. It’s bad, every single time. With the tools the web gives you it’s not possible to get it completely right that way.
- robbiejs 6y agoAbsolutely. In the development process of our product DataGridXL we've also experimented a lot with "scrollwheel" events and such, for months really. It's just not possible to get it to feel natural. You might be able to get it working nicely on one specific OS+browser combo, but that's about it. Always listen to the native "scroll" event: https://www.datagridxl.com/demos/one-million-cells https://www.datagridxl.com/demos/one-million-cells
- chrismorgan 6y agoOne deficiency of using the native scrollbars visually here is that the arrows at the end of the scroll bars on some platforms (e.g. Windows, most Linux) will scroll by a predetermined number of pixels, more or less, whereas in such an application you would probably prefer it to scroll one column horizontally or one row (though maybe more than one) vertically. Of course, placing your own scrollbar visuals is a hazard too, most significantly because it doesn’t look native and may offer different functionality from the normal scrollbar. You can’t win, the web doesn’t give you the tools you need to get the experience perfect. But yeah, your example in DataGridXL is a good example of the right approach to take for this if you want scrolling to be done in steps as is conventional in spreadsheets.
- motohagiography 6y agoRecently I've become addicted to sc-im, a vi (vim) like spreadsheet. Using this tutorial: http://blog.startaylor.net/2016/08/29/sc/ http://blog.startaylor.net/2016/08/29/sc/ While I don't do very complex things, in terms of note taking using a spreadsheet, it's excellent.
- supermac 6y agoThis spreadsheet is currently the most comprehensive in open source projects I have seen