Находки в опенсорсе – Telegram
Находки в опенсорсе
10.8K subscribers
11 photos
1 video
3 files
820 links
Привет!

Меня зовут Никита Соболев. Я занимаюсь опенсорс разработкой полный рабочий день.

Тут я рассказываю про #python, #c, опенсорс и тд.
Поддержать: https://boosty.to/sobolevn
РКН: https://vk.cc/cOzn36

Связь: @sobolev_nikita
Download Telegram
​​An email client that functions like a kanban board, for Mac/Windows/Linux/Docker.

Features:
- Works on MacOS (beta), Linux (alpha) & Windows (alpha)
- Developed using Gmail, Outlook & Fastmail
- Should be compatible with other email providers (uses IMAP/SMTP)
- Considered in "beta" - used as primary email client for >1yr

https://github.com/Oxygem/Kanmail

#js #python
​​Editly is a tool and framework for declarative NLE (non-linear video editing) using Node.js and ffmpeg. Editly allows you to easily and programmatically create a video from set of clips, images and noscripts, with smooth transitions between and music overlaid.

Editly has a simple CLI for quickly assembling a video from a set of clips or images, or you can use its more flexible Javanoscript API.

https://github.com/mifi/editly

Example:

editly \
noscript:'My video' \
clip1.mov \
clip2.mov \
noscript:'My slideshow' \
img1.jpg \
img2.jpg \
noscript:'THE END' \
--fast \
--audio-file-path /path/to/music.mp3


#js
​​Polacode — Polaroid for your code. Use Polacode to capture good look images of your code, just as it appears in #vscode.

You have spent countless hours finding the perfect JavaScript grammar, matching it with a sleek-looking VS Code theme, trying out all the best programming fonts.

You take three days porting over your theme before starting to use VS Code.
You shell out $200 for italic cursive html attributes.

The code has to look right.

https://github.com/octref/polacode

#js
​​Taichi (太极) is a programming language designed for high-performance computer graphics. It is deeply embedded in #python, and its just-in-time compiler offloads compute-intensive tasks to multi-core CPUs and massively parallel GPUs.

https://github.com/taichi-dev/taichi

Example code: https://github.com/taichi-dev/taichi/blob/master/examples/fractal.py#L1-L31

Output:
​​An experiment to create a community driven language-learning platform.

> My goal is to start a community-driven language-learning platform that gives it's users and contributors a way to influence its future and adapt it to special requirements. To achieve that, I release all source code under the GPLv3 free software license, which guarantees end users the freedom to run, study, share, and modify the software.

https://github.com/kantord/LibreLingo

#python #svelte
​​interrogate checks your code base for missing docstrings.

Documentation should be as important as code itself. And it should live within code. #python standardized docstrings, allowing for developers to navigate libraries as simply as calling help() on objects, and with powerful tools like Sphinx, pydoc, and Docutils to automatically generate HTML, LaTeX, PDFs, etc.

interrogate will tell you which methods, functions, classes, and modules have docstrings, and which do not. Use interrogate to:

- Get an understanding of how well your code is documented;
- Add it to CI/CD checks to enforce documentation on newly-added code;
- Assess a new code base for (one aspect of) code quality and maintainability.

Let’s get started!

https://interrogate.readthedocs.io/en/latest/

Personal opinion: I really like the incremental addoption feature.

#docops
​​Breaking news!

Your instant dev environment.
Get the full #vscode experience without leaving GitHub.

Code, build, test, debug, and deploy with a complete development environment in your browser.

Personal opinion: I got lucky enough to be invited to test this feature. And it works amazingly well! I really love #github, it is my favourite social network. Now with embeded IDE!

https://github.com/features/codespaces
Let's talk about the future and the current state of this project.

It all started as a hobby: I love open-source and I used to spam with awesome project links to all my friends and colleagues. At some point, I have asked myself: why couldn't a larger community benefit from these projects? And I thought: "I should probably start a public channel to share my opensource findings".

In a year our small project has grown to more than 3500 people. And that's pretty impressive! And of course, I have plans to grow our community even more.

As a result of this growth, I have started to receive lots of unwanted attention. Mostly in a form of ad proposals like "coding courses", blockchain and crypto markets, shady "new age" HR platforms, and outsource companies.

I, personally, cannot allow any bullshit into this feed. So, I have decided to make a policy.

1. No ads are posted, ever (except for things that I am personally involved in, like conferences and workshops I organize)
2. Opensource projects, articles, and talks can still be sent to me directly. I have removed my contacts from the group denoscription not to receive any more spam, but they are listed in my GitHub account. I will post awesome ones!
3. Instead of unethical ads, if you find the content helpful, learn something new, or improve your daily life, then to support this channel you can:

- Directly donate to us on Github Sponsors: https://github.com/sponsors/wemake-services You will also receive "GitHub Sponsor" badge
- Just follow me on GitHub to show your interest and gratitude: https://github.com/sobolevn

That's it! Happy holidays.

P.S. This will go to the pinned post:
Находки в опенсорсе pinned «Support this project: donate on GitHub Sponsors https://github.com/sponsors/wemake-services or follow me on GitHub https://github.com/sobolevn This allows us to stay ad-free and post cool things daily.»
​​Pyinstrument is a #python profiler. A profiler is a tool to help you 'optimize' your code - make it faster. It sounds obvious, but to get the biggest speed increase you should focus on the slowest part of your program. Pyinstrument helps you find it!

Features:
- Output beatiful html and terminal reports
- Profile a specific chunk of code
- Profile a web request in Django and Flask
- Give only 30% overhead to your code

https://github.com/joerick/pyinstrument
​​You stuffed command shell with aliases, tools and colors but you lose it all when using ssh. The mission of xxh is to bring your favorite #shell wherever you go through the ssh without root access and system installations.

Works with bash, zsh, fish, and xonsh.

https://github.com/xxh/xxh

#python
A Gatsby theme for creating Primer documentation sites.

Doctocat makes it easy to set up a documentation site so you can focus on what's important: writing docs. You can start with just several clicks.

Made by GitHub.

https://primer.style/doctocat/getting-started

#js #react #docops
​​This extension integrates Draw.io into #vscode

Features
- Edit .drawio or .dio files in the Draw.io editor, as xml or both.
- Edit .drawio.noscript files with embedded Draw.io diagrams (might be slow for diagrams with > 400 nodes).
- To create a new diagram, simply create an empty .drawio or .drawio.noscript file and open it!
.drawio.noscript are valid .noscript files.
- Uses an offline version of Draw.io by default.
- An online Draw.io url can be configured.
- A Draw.io theme can be selected.

https://github.com/hediet/vscode-drawio

#ts #docops
​​Tig is an ncurses-based text-mode interface for git. It functions mainly as a #git repository browser, but can also assist in staging changes for commit at chunk level and act as a pager for output from various Git commands.

https://github.com/jonas/tig

#c
rssfs: A RSS reader as a file system

Are you unsure how to read RSS feeds? Why don't you just mount them? What does this software do?
It will mirror RSS and Atom feeds as file systems. Example file system structure for one feed with two articles:

/tmp/mnt/rssfs/Open Source Feed/Hello World.html
/tmp/mnt/rssfs/Open Source Feed/Second Article.html


https://github.com/dertuxmalwieder/rssfs

#go
Breaking news!

Deno@1.0 is released! https://deno.land/v1

For those who don't know, Deno is new secure runtime for #js and #ts. Its features are:

- Deno is (and always will be) a single executable file
- Deno is careful to not deviate from standardized browser JavaScript APIs
- First class TypeScript support
- Rust APIs, because Deno is written in #rust
- Many others!

I would love to play with it on the weekends. Highly related: https://www.youtube.com/watch?v=M3BM9TB-8yA
​​#python package for object oriented headers, HTTP/1.1 style.

Parse headers to objects and objects to headers. No matter if you are currently building software using HTTP or IMAP (message, email), you should not worry about easily accessing header and associated attributes, adjectives or values.

> I have seen so many chunks of code trying to deal with these headers; often I saw this implementation:

https://github.com/Ousret/kiss-headers
​​Quill provides a Quoted Domain Specific Language (QDSL) to express queries in #scala and execute them in a target language. The library's core is designed to support multiple target languages, currently featuring specializations for Structured Query Language (SQL) and Cassandra Query Language (CQL).

Features:

- Boilerplate-free mapping: The database schema is mapped using simple case classes.
- Quoted DSL: Queries are defined inside a quote block. Quill parses each quoted block of code (quotation) at compile time and translates them to an internal Abstract Syntax Tree (AST)
- Compile-time query generation: The ctx.run call reads the quotation's AST and translates it to the target language at compile time, emitting the query string as a compilation message. As the query string is known at compile time, the runtime overhead is very low and similar to using the database driver directly.
- Compile-time query validation: If configured, the query is verified against the database at compile time and the compilation fails if it is not valid. The query validation does not alter the database state.

https://github.com/getquill/quill
​​Despite all the recent hype, setting up a new #ts library can be tough. Between Rollup, Jest, tsconfig, Yarn resolutions, ESLint, and getting VSCode to play nicely....there is just a whole lot of stuff to do (and things to screw up). TSDX is a zero-config CLI that helps you develop, test, and publish modern TypeScript packages with ease - so you can focus on your awesome new library and not waste another afternoon on the configuration.

Features: linting, testing, building, and local development.

https://github.com/jaredpalmer/tsdx