Labs-LCS Logomark

Labs.LCS - Projects

Developed by Lucas Campanhã dos Santos

This site was last updated in September 2025.

Since then, I've been focused on developing and scaling legal automation systems at Mottu, specifically regarding risk mitigation for consumer and labor relations.

Me

Hi! I'm Lucas!

I'm a self-taught software developer currently specializing in the backend area @FIAP.

Welcome to my self-documented learning journey.

About me

About me

About me

In a few words, I’m a Brazilian lawyer and a self-taught fullstack programmer passionate about technology – all of it, but especially data analysis and software development. I’m currently transitioning into the tech field, studying Systems Analysis and Development at FIAP.

As people who know me usually say, “Lucas studies this stuff for fun". And it’s true: in recent years, I’ve explored several languages (from pure C to Swift; from Vanilla JS to Python with Flask, etc.), many tools (from Selenium for WebScraping to a homemade server with NGINX, Docker, Cloudflare Tunnel, where I test my APIs), solved real problems (both at work and in freelancing), and even imaginary ones (like redesigning the main Logic Gates using only the simple and primitive NAND).

Why? Because it’s what I love to do.

So, even with a solid background (I graduated in Law at USP - Largo de São Francisco) and more than 7 very fruitful years in a field that may seem quite distant to many, I decided to dive headfirst into technology by starting my second degree.

This journey will be public! I invite you to follow along here.

Personal Projects

Personal Projects

Personal Projects

Screenshot

Privacy-Focused PDF Editor for Legal Professionals

This is a browser-based PDF editor designed with the privacy needs of Brazilian lawyers in mind. The project delivers a simple yet comprehensive interface tailored for common legal document operations such as merging, reordering, deleting, and annotating PDFs.

Read more

The initial architecture was designed for a truly serverless environment, utilizing a simple Single-Page Application (SPA) schema within SvelteKit, which was achieved through static site prerendering.

While the serverless approach offers a clear and secure method for handling documents and user data without storing them, it presents significant limitations. Consequently, I am transitioning the application to a self-hosted server, migrating the JavaScript logic to the backend.

I acknowledge the potential security implications this transition could introduce for end-users. Therefore, access to the current project is restricted to a small group of test users until these security concerns are fully addressed.

The original client-side-only version of the project remains accessible by cloning the repository from the following URL: https://github.com/Labs-LCS/svelte-labs_lcs-pdf

Technical aspects

Aside from authentication (handled via Firebase), the entire application runs client-side, with routing being handled via SvelteKit. It uses the browser’s IndexedDB for local file storage, ensuring that no documents are uploaded or stored on external servers — preserving full user privacy.

Initially deployed on Cloudflare, the project was later migrated to Vercel to support potential Node.js enhancements. PDF rendering is powered by Mozilla’s PDF.js, while core document operations (merge, delete, reorder) are handled by MuPDF compiled to WebAssembly — a deliberate choice for performance and device compatibility. Using a C-based engine via WASM ensures fast processing even on lower-end machines, unlike JavaScript-only libraries.

To maximize performance and maintain minimal overhead, I built the frontend with Svelte — a compiler rather than a runtime framework. This allowed for efficient state management and fast load times. The first version of this project was developed with vanilla JavaScript and PDF-Lib.js as a learning experience, before evolving into a more robust and scalable solution.

Study Journey

Study Journey

Study Journey

Completed Courses

☆ API Patterns: From HTTP to API modeling

Certification

☆ NGINX: Web server, Reverse Proxy, and API Gateway

Certification

☆ Git and GitHub: sharing and collaborating on projects

Certification
Screenshot

☆ Ongoing: Nand2Tetris

This project is part of my ongoing participation in the Nand2Tetris course, which explores the entire hierarchy of computer systems — from basic logic gates to a functioning operating system and compiler.

I'm taking this course to gain a deeper and more practical understanding of how computers work at every level. By building these foundations from first principles, I aim to move beyond dependency on high-level abstractions and frameworks.

This approach supports more informed decision-making when designing complex systems, and fosters a stronger, more independent problem-solving mindset.

GitHub Repository: https://github.com/Labs-LCS/NAND2Tetris

Screenshot

☆ Ongoing: DSA in C Programming Language

This project consists of ongoing implementations of essential data structures and algorithms in the C programming language.

The focus is on exploring core computer science concepts at a low level, with attention to memory management, performance characteristics, and algorithmic design. By avoiding high-level abstractions, the project emphasizes a clearer understanding of how data structures operate in memory and how algorithms interact with system resources.

The use of C allows for fine-grained control and provides a foundation for applying these concepts in performance-critical or resource-constrained environments.

GitHub Repository: https://github.com/Labs-LCS/DSA_in_C

...and about the duck

...and about the duck

...and about the duck

Well, the story behind the duck is quite interesting!

I'm a very hands-on person. Ever since I was a kid, my curiosity led me to take my toys apart, which later evolved into a simple philosophy: if I can fix something, I will. To this day, my friends still call me to borrow tools, assemble furniture, or change a shower head—a real handyman. This philosophy also grew into a desire to build my own things, and nothing enables that more than the world of programming.

This is where the duck comes into the story, and it's no coincidence. On a trip to Paris, I came across a shop that only sold rubber ducks, which reminded me of the famous "rubber duck debugging" method. To my delight, I found an item that perfectly merged my passion for programming with my life philosophy: the DIY Duck from Budduck (an amazing store, by the way!).

Me and my beloved girlfriend

That's me and my beloved girlfriend, who loves to cook!

The little duck embodied everything I stand for, and since then, I've decided to adopt it as a symbol for my personal and open-source projects.

It's worth noting: all rights to the Deluxe DIY Duck belong to Budduck, which is why I decided to design my own logo inspired by it, rather than using the official images or products.