Become a sponsor to cxxxr
cxxxr
Hi, I am the developer behind a series of projects including Lem (a text editor), Valtan (a Common Lisp implementation), and cl-lsp (a Common Lisp language server).
Lem on the cloud
Powerful web-based Editor with collaborative editing
Problems
With Lem I would like to solve several problems I see in the current Common Lisp ecosystem:
- Complex Setup Requirements
Developing in Common Lisp often requires the cumbersome setup of individual editors and language implementations on machines.
This setup presents a frequent point of failure, and a significant barrier for new lisp programmers. - Limited Device Accessibility
In today's mobile-first world, the majority of users operate on iPads, iPhones, and Android devices rather than traditional PCs.
Current development environments which are restricted to Linux, Windows, or macOS significantly raise the entry barrier for new developers. - Legacy IDE
SLIME, the Common Lisp IDE for Emacs, has seen little innovation over the past 20 years.
Other languages (Go, Python, JavaScript, TypeScript, etc.) similarly lack a good IDE.
This is one of the reasons why a poor editor called VSCode has become popular.
Solution
My solution to these problems is to offer Lem as a web platform.
This platform allows users to start programming in a powerful environment without the cumbersome task of installing language processors and text editors.
Furthermore, by being web-based, it enables collaborative editing, which will enhance pair programming and team development activities.
I am currently developing a special-purpose product called Rooms that can solve the above challenges.
All you need is a web browser and a GitHub account.
Users can create a "Room" which launches an EC2 instance for Lem.
In this "Room" you can freely manage a complete Common Lisp environment.
There is no need to resolve dependencies or undergo the cumbersome setup process required for local installations.
Moreover, by connecting an external keyboard, Rooms can also be used on iPads and smartphones in a similar manner.
Additionally, you can invite other users to your "Room" to collaborate.
Currently, the project Rooms is positioned as a closed alpha.
Please note that only invited users can create rooms.
Milestones
Collaborative Editing
Currently, multiple users share a keyboard in one room.
This is a good thing, but if two or more people want to edit at the same time, a collaborative editing feature would be preferable.
Perhaps a mechanism to manage window split status, current buffer, cursor status, etc. for each user would be put into lem,
An OS-like mechanism where users log in to lem might be included.
Mobile Optimization
While Rooms currently supports use on mobile devices, an external keyboard is required.
Future updates may include touch-based cursor control and scrolling, as well as a specialized on-screen keyboard for programming.
More Powerful Editor
I plan to modernize the current IDE features significantly,
including support for varying text sizes and images,
and integration with LLM.
Call to Action
I am currently balancing this project with a full-time job, dedicating approximately 2 to 3 hours daily.
Ideally, I would like to commit at least 10 hours daily to make significant progress.
Financial constraints, including living expenses and service costs like AWS, limit my current capacity.
I need to secure about $1000/month to work on this project full-time.
Any support to help cover these costs would be immensely helpful and appreciated.
I invite you to lend me your support in this exciting journey to redefine software development! Thank you very much!
Featured work
-
lem-project/lem
Common Lisp editor/IDE with high expansibility
Common Lisp 2,453
$10 a month
SelectReward: Invitation to use Rooms for one month.
$50 a month
SelectReward: Use Rooms for free for 6 months.
$250 a month
SelectReward:
- Use Rooms for free for 6 months.
- Priority Technical Support: Priority technical support for Lem and Rooms
$2,000 a month
SelectReward:
- Free use of Rooms for 1 year
- Exclusive Function Request: Ability to request and prioritize functions (by mutual agreement) to the extent feasible in a regular weekly chat for one month.