You are browsing as a guest. Sign up (or log in) to start making projects!

Lxsh-S

@Lxsh-S

Joined June 1st, 2026

  • 27Devlogs
  • 4Projects
  • 4Ships
  • 68Votes
16 yr old procrastinator!
Open comments for this post
Reposted by @Lxsh-S

1h 42m 10s logged

DESIGN PHASE #5
Lol :)
I changed the design one more time :yayayayayay-67-67: :yayayayayay-67-67:

Progress

  • I tried changing the design of the top case to look like a wave from the side and ig it resembles it a little
  • Also I added much needed curves to the design :freaky:

I’ll provide the screenshots but also checkout the guithub page!! :)

6
1
297
Open comments for this post

1h 42m 10s logged

DESIGN PHASE #5
Lol :)
I changed the design one more time :yayayayayay-67-67: :yayayayayay-67-67:

Progress

  • I tried changing the design of the top case to look like a wave from the side and ig it resembles it a little
  • Also I added much needed curves to the design :freaky:

I’ll provide the screenshots but also checkout the guithub page!! :)

6
1
297
Open comments for this post
Reposted by @Lxsh-S

45m 42s logged

DESIGN PHASE #4

Yess!!!
I’m done with the firmware finally and I also wrote a README

The firmware has functionsREADME has it:-

  • Media controls
  • volume controls with mute switch on the rotatory encoder
  • Fullscreen

Also wrote the list of components used for the project

0
1
12
Open comments for this post
Reposted by @Lxsh-S

5h 29m 12s logged

DESIGN PHASE # 3

Finaalyy im done with the design and we are into the final steps of the designing phase :yayy:

Things Done

  • Switched between 3 different designs and finally I’m moving with this one
  • Rerouted the PCB properly
  • Completed the CAD

Things left

  • The firmware is left I'm thinking of using circuit python to write that :)
  • Write the README.md file for the repo and we’ll be done ig
2
1
146
Open comments for this post
Reposted by @Lxsh-S

3h 5m 21s logged

DESIGN PHASE #2

The LED errors man :sad-apple:
Anyways,

Progress

  • Added an OLED screen
  • Added 2 LEDs to the pcb but they were causing errors
  • Redesigned the pcb thinking the error was caused by something that I may have done wrong but that wasn’t the case

Next??

  • Add hackclub logos to make the pcb look cooler
  • Wait for someone to help me fix the LED problem
  • Design the case for the pcb

Learnt

  • Learnt more about how kicad pcb editor works (footprints and symbols)

What we currently have?

  • 2x LEDs
  • 1x OLED screen
  • 4x keys
  • 1x Volume knob/rotatory encoder switch
0
1
95
Open comments for this post
Reposted by @Lxsh-S

1h 20m 34s logged

DEVLOG 1

Hey all,
I’m new to hardware stuff and decided to begin with this hackpad mission.

What have I done?

I started with the awsome tutorial for hackpad then tried to customize it.
I have addded

  • 4 keys
  • A volume knob

Next??

I’ll be adding a oled screen first which will be displaying a cute companion typa thing (still didnt figure out the name).

Where did I spend most of the time??

  • The most time went into schematics as im new I had made soo many mistakes that I realised I had made by watching some yt videos
  • The most fun part was to tinker in PCB editor and watch what the pcb looks like in the 3-d viewer
0
1
14
Open comments for this post

45m 42s logged

DESIGN PHASE #4

Yess!!!
I’m done with the firmware finally and I also wrote a README

The firmware has functionsREADME has it:-

  • Media controls
  • volume controls with mute switch on the rotatory encoder
  • Fullscreen

Also wrote the list of components used for the project

0
1
12
Open comments for this post

5h 29m 12s logged

DESIGN PHASE # 3

Finaalyy im done with the design and we are into the final steps of the designing phase :yayy:

Things Done

  • Switched between 3 different designs and finally I’m moving with this one
  • Rerouted the PCB properly
  • Completed the CAD

Things left

  • The firmware is left I'm thinking of using circuit python to write that :)
  • Write the README.md file for the repo and we’ll be done ig
2
1
146
Open comments for this post

3h 5m 21s logged

DESIGN PHASE #2

The LED errors man :sad-apple:
Anyways,

Progress

  • Added an OLED screen
  • Added 2 LEDs to the pcb but they were causing errors
  • Redesigned the pcb thinking the error was caused by something that I may have done wrong but that wasn’t the case

Next??

  • Add hackclub logos to make the pcb look cooler
  • Wait for someone to help me fix the LED problem
  • Design the case for the pcb

Learnt

  • Learnt more about how kicad pcb editor works (footprints and symbols)

What we currently have?

  • 2x LEDs
  • 1x OLED screen
  • 4x keys
  • 1x Volume knob/rotatory encoder switch
0
1
95
Open comments for this post

1h 20m 34s logged

DEVLOG 1

Hey all,
I’m new to hardware stuff and decided to begin with this hackpad mission.

What have I done?

I started with the awsome tutorial for hackpad then tried to customize it.
I have addded

  • 4 keys
  • A volume knob

Next??

I’ll be adding a oled screen first which will be displaying a cute companion typa thing (still didnt figure out the name).

Where did I spend most of the time??

  • The most time went into schematics as im new I had made soo many mistakes that I realised I had made by watching some yt videos
  • The most fun part was to tinker in PCB editor and watch what the pcb looks like in the 3-d viewer
0
1
14
Ship

DAGIT SHIP1

I have built a terminal TUI git visualizer that beautifully displays your git repository on the terminal.

Challenging part

Dagit has four small sections [left panel/visualizer/status panel/logs]. I first thought there would be no resizing issues because I’m using bubble-tea and built all there sections’ skeletons, as bubble-tea doesn’t automatically handle the resize event(got to know later). I manually tried to fix it in my own broken ways and found somewhat of a solution that feels and looks good

A Breakdown of the project

  • dagit refuses to launch if we don’t open it inside a git repo.
  • We fetch all the data by running git commands.
  • Currently in the left panel we have the following information:
* Repo name
* The repo's owner name 
* Current branch 
* The url of the remote
  • In the vizualizer:
* hash of the commit 
* Reference 
* the committer name 
* The time of the commit
* We also beautify the graph and show it in this section
  • Log section:
* Hash of commit 
* Commit message
* Committer name 
  • Status panel:
* Modified, staged files are shown here
  • The user can toggle between the visualizer and the status panel using v

  • The user can also choose between my predefined tick rates[500ms/1s/3s/5s/10s]. By default the tick rate is set to 1sec

Proud

  • Of how quickly I have understood the git docs and used it to build this project that makes git look so much better for the newbies.

  • Also that I have finally made a project that is not very complicated for the user to use like gos was. lmao

  • Also handling resize events was a bit of headache and it feels so much better now. I feel proud because of that too :shy

Do we need to set something before?

  • No, but if you wanna install it using go, you need to have go installed :)

  • Note: The releases page only has a darwin(macos) and linux version. So I recommend using wsl on windows to enjoy the beauty of dagit

Installation

  • the simplest way to install dagit is using the AUR:
yay -S dagit-bin
  • Using go:
go install github.com/lxsh-S/dagit@latest
  • You can also install it from the github releases page (Make sure you get the latest version)
  • 5 devlogs
  • 13h
  • 10.32x multiplier
  • 130 Stardust
Try project → See source code →
Open comments for this post

2h 25m 14s logged

DAGIT DEVLOG 5

yoo once again!

I’ve worked on the features I’ve been delaying and let’s see the progress

Progress Overview

  • I first worked on the idea i got yesterday A status panel to see staged/modified files

  • Then I tried to work on scrollbars in the git log and the visualizer but I failed to do so I just scrapped it completely and reset the repo to the after status panel state

  • After scrapping that, I worked on the tick rate selection Intervals of time at which we update the data displayed in the TUI

DETAIL

  • The status panel idea had come when I was surfing git hub and was just looking at lazygit (A far better project than dagit btw). I saw the same panel there and thought of adding it here because it would make more sense, although dagit is different from lazygit (dagit is only trying to visualze git not become a workflow)

  • The scrollbars were out of my league I already knew that but still gave a try. I dont think I would be giving up on the idea. I’ll just watch some tutorials on bubbletea and scrollbars specifically before working on it again

  • At first, I thought I would make the tick rate selector a separate panel where we would just scroll through different intervals of time, but as I consider myself lazy I just thought of adding it in such a way that instead of scrolling we change the tick rate with the press of buttons. Although the max tickrate is already small(10sec) I recommend using 1sec on small projects

0
0
146
Open comments for this post

2h 49m 51s logged

DAGIT DEVLOG 4

Yoo!
I’ve made soo many updates and the resizing /clipping issues are still eating my brain like bugs :crying: :crying:

Progress overview

  • Decreased the sizes of reference being displayed also truncated lines in the gitlog so that the vertical clipping stops

  • I completely styled the UI using lipgloss and it looks soo much better now :yay: :yay: :yay: :yay: :yay:

  • Added highlighting to the head of the repo that pops a little more

  • Refactored the old way of refreshing the data

  • Refactored the code to increase readability

Explain

  • The git logs were looking odd because when the commit messages were long , the log that should only take the space of one line was now also taking space in the second line. So we fixed it using truncateMessages() function

  • As we are pushig to multiple tags . The reference also gets long and causes a clipping issue again. So we again simply dosent let the refs be that long[But the current implementation can cause the line to break suddenly that may not look good all the time]-

// Stop 'refs' being too long
if lipgloss.Width(refs) > 30 {
	refs = refs[:27] + "..."
}
  • And as dagit is a live visualizer, I removed the old way of refreshing the data[clicking [r] to refresh]. Now what we do is use tea.Tick and the time library to refresh the data every 1 second.

Issues that can be caused

  • We are currently refreshing data every second that can put a lot more load on the system when used inside a big repository, So in infuture I’m gonna work to give the user a way to choose the tick Rate

What im gonna work on now

  • Scrollbar for gitlog and also visualizer
  • A tick rate selector
  • File status panel that can be toggled with the visualizer
  • A way to search for different repo’s in the user’s computer and jumping between them(something like the nvim feature of finding files) –im not really sure of this :confuse:
2
0
158
Open comments for this post

43m 36s logged

DAGIT DEVLOG 3

Yay!
we have got the release workflow up and running

What we are doing

  • what we do is make new binaries name dagit-linux-amd64.tar.gz and dagit-darwin-arm64.tar.gz
    and push them to our releases page with the tag given while pushing to the repo

  • We also push to the AUR!! :yay: . So all the I use arch btw people can download it easily :larp:

Installation

  • AUR

yay -S dagit-bin
  • Run in a github repo ,ie paste->dagit
  • Github releases

  • go to the releases page and download the binaries zip, extract it and run in a github repo
0
0
76
Open comments for this post

3h 34m 2s logged

DAGIT DEVLOG 2

We’ve improved the TUI soo much!! :yay:

What I’ve done

  • Got gitlog working with hash, commit message and the contibuter
  • Made a somewhat good looking git visualizer and fixed the horizontal and vertical border issue caused by big lines (reference mainly)
  • Styled the git visualizer with charm’s lipgloss
  • Fixed border issues in the footer and git log too
  • Also made dagit resize when the user makes the terminal window larger but idk why it doesnt work when the terminal window is shortened
  • I also added a resize keybindr to reload the data in the TUI so that the user does not need to stop it and run again for it to update to latest info

Issues faced

I haven’t faced any big issue in particular but figuring out resizing is the only thing that eats my brain

Where I spent the most time

I have spent the most time making the visualizer, lemme explain a little of it’s woking !!

  • First we fetch the git log graph from git and then we spread the graph by using SpreadGraph function in graph.go to make it look a little better
  • Then we get 15 of the graph lines into out TUI and then render it using lipgloss [Man charm’s tool are soo cool and make CLI/TUI look soo good]. Although we don’t see all the 15 lines as we dont have a scroll feature for now

What we are going to do

  • Style it
  • Fetch number of commits done to the repo and display it
  • Add scrollbar to git visualizer
    _ Also add scrollbar to git log -Not sure

What I currently feel

When I was planning to make dagit, I felt it’ll be different and will attract people towards it but it’s not upto my expectation.
I thinking to adding some feature that will make more people use it

0
0
85
Open comments for this post

3h 0m 31s logged

DAGIT DEVLOG 1

(BTW WHOEVER ADDED EMOJIS OPTION SHOULD BE PROMOTED :smirk-hole: )
Hii,
I’m making a TUI application that beautifully visualizes your GitHub repo inside your terminal!!

Note -> This devlog is a compilation of 2 days of work that I’ll explain

What I have done

DAY 1:

I started working on dagit with first:

  • Checking if the current directory is a git repo or not
  • If yes, we first fetch the repo name along with
  • owner of the repo
  • the remote url of current repo
  • current branch
    Lmao, this was all I did on day 1

DAY 2

Today the fun began :evil:

  • I started working on the TUI section
  • I started with a simple bubble tea list TUI to remember the simple things that I had forgot in these many days
  • Then I used bubbletea to render the left panel containing the the data we fetched from day one but I realised that this is messed up cuz I wont be able to make different sections for the visualizer and the git log history
  • When I searched for a fix I saw lipgloss and then integrated it with our current setup
  • I used lip gloss to make diffferent sections for our TUI. The sections that I currently want in the TUI left panel/middle(visualizer)/ bottom(git log) along with the footer like nvim
  • But :crying: I forgot about the resizing problem and idk anything about how I’m going to fix it like other TUI’s do so I’m donna leave it like tat for now

What I’m gonna do

  • Make it look prettier
  • Get the git log because it’s gonna be easier than the visualizer
  • Make my shit code look a little better
0
0
102
Ship

SHIP 2

This maybe long but read it please :)
I’ve improved gos by reading the reviews on the first ship and some little things that I’ve added my self

New features

  • I have made gos to make a .gos folder in the home directory of the user where he/she/they can store their custom templates using gosadd in the folder usr_Templates

  • I have added the gosadd command that uses -a flag with the folder name that you want to turn as a template. It simply stores the whole content of the folder and saves them under .gos/usr_Templates is the home directory

  • I have a added the gosget command that uses two flags: -p as the project name and the -e, where you give the template name that was stored in usr_Templates. It fetches the template from that folder and pastes it in the current directory with the name that you have entered i n -p

  • I have added a --list flag that shows all premade project structures

  • I have added gosdir that is a mkdir like command for making new directories. it user -m flag and the folder name of the new folder

READ THE README.md under “After Installation” section to find a way to make this commands shorter and more easy and faster to type , you’ll have to change things in .bashrc

Support

Gos works just fine on mac and linux and also wsl on windows but on windows you may lack the alias feature to make the commands shorter

Things you need to know!!

A lil knowledge about Linux and configuration script for shells like .bashrc will help you if you dont know about it.
It’ll be fine for other users(– ppl who say ‘i use arch btw’)

If your not able to figure out things or it dosen’t workout for you because it feels a little complicated then you can skip the project or use AI to help you with initialization

Things I found challenging

I’ve always felt challenging to make this simple project also simple to use for other users thats the reason we are using alias for now as it helps shorten the command( Very helpful is you downloaded the package form the AUR)

What im proud of

I’m proud of the thing that i didn’t quit while making this project or burnout because the largest part of my day goes to my intermidiate clg ( 11hrs and 30 mins , also adding the traveling time) because my parents thing a school that works for more time will teach me more things lol
I wanna work on big projects that are complex and fun but im not able to most of the times

How I wanna improve

I wanna improve my understanding about code and problem solving skills so that I’ll be able to work on those big and complex projects

THANKS FOR READING, LOVE Y”ALL = )

  • 9 devlogs
  • 13h
  • 16.41x multiplier
  • 207 Stardust
Try project → See source code →
Open comments for this post

2h 7m 17s logged

GOS DEVLOG 13

On the last devlog I had gos making .gos folder in the homedirectory of the user where it stores custom templates made by the user

What I have got new

I have added two new features:

  • gosadd
  • gosget

-[gosadd]

  • We use the this command to add any folder as a template that we can later use with a different command

  • We have got a -a flag to add to folder. Although we wont be using this flags because I have got a way to make it easier and faster to type in the terminal and have given the solution in README.md in [After installation]

-[goget]

  • We use this command to fetch the copied folder from .gos/usr_Templates to the current directory we are on

  • “gosget” uses two flags:
    -p –> We use this to give in the new name of the template folder that will be saved in the current directory
    -e –> We use this to get the correct template that we have stored

  • Both -p and -e default values are an empty string so passing a value in necessary for it to work

0
0
6
Open comments for this post

45m 55s logged

GOS DEVLOG 12

I’ve made it so that when you run the newest version 0.9.1 which I havent released yet. It automatically creates a .gos folder in the user’s home directory and it’ll be the place where is store custom templates made by the user

I still dont know

I’ve to figure out how do we walk through the current directory and store in the usr_Templates and somehow copy paste it when the user requests that specific template

Other

I still haven’t worked on the project properly due to my school. I currently have 9 hrs to figure out how we are going to move forward = )

0
0
63
Open comments for this post

34m 11s logged

GOS DEVLOG 11

I’ve read the reviews by you guys and have found out that:

  • Gos needs to have a way so that the user is able add their own templates

  • Few ppl also said that initializing a git repo when making a project will be very helpful

  • One review was about some bugs that he face in the tool I dont know what he had faced because the version that I had shipped was 0.6.5 and I’m currently working on 0.9.0. If anyone did face them too can you please tell me?

  • One guy asked me why did I name Gos as gos so for you:
    The name Gos can be broken down like this : D

Gos
"Go" --> The language 'Golang'
"s" --> from 'Structure'

The first name that I had thought for was Gostruc. But it felt too big to type in the terminal when compared to mkdir and tree

  • I’m also thinking about adding a tree like command in this project. Can you guys tell if I should do that ?

I really appretiate your reviews guys and I’ll be working on improving this project. Hoping that it stays a little relevant :(

– Bye

0
0
13
Loading more…

Followers

Loading…