Author: p064zh6pmr8d

  • ceptron-mov

    Ceptron-mov

    🏃 Ceptron-mov is a study project that aims to apply Machine Learning and Data Science concepts to build a human-machine interface that is capable of identifying human physical movements.

    📺 https://www.youtube.com/watch?v=CSnNmrJZ-oU&t=4s

    obs: The results spoken in the video are in Portuguese (pt-BR). The labels of movements in the dataset as well.

    Table of Contents

    Introduction

    The availability of a system capable of automatically classifying the physical movements performed by a human being is extremely attractive for many health monitoring applications and for the development of advanced man-machine communication interfaces. When we speak of physical movements, I mean whether the person is sitting, lying down, walking, running, pedaling, and so on.

    Information on physical movements is valuable as a source of contextual knowledge. If this information were available, the interaction between man-machine would be richer. In robotics, there are several applications that require the robot’s ability to recognize which movement the user wants to perform. For example, smart walking support systems, which help people with motor disabilities and the elderly while trying to walk or walk.

    To create a system of classification of physical movements automatically, the main feature is the motion sensors. These sensors should be small and light and be in contact with the human body. Smartphones have several sensors on board, like two of the main ones used in this work, the accelerometer and the gyroscope. With the great growth of people using the mobile device, it is the ideal device to perform movement recognition.

    Technology

    • Android and Sensors API Android to develop the application that communicates with the sensors (Accelerometer and Gyroscope) of the smartphone to monitor the movements and collect the data.
    • Firebase Database to store data collected by Android sensors.
    • Jupyter Notebook to document the extraction of features and analysis of machine learning models.
    • Python3 taking the data collection, the rest of the project was all developed in python.

    Dependencies

    The Python libraries below are required to run the project.

    Run the following command to install:

    $ pip install -U numpy scipy scikit-learn matplotlib pandas Flask

    obs: The Anaconda distribution of python already has the above and most included packages.

    Project Structure

    This project has 4 applications.

    • App-mobile: It collects the data according to the movement that the user has informed by a selector of movements, then it clicks to execute the application to begin to monitor the movements, and when the movement finishes, it stops clicking and the data is sent to the Firebase automatic. The application also implements a way to evaluate the machine learning model that has been trained. The user clicks run, makes the move. To see the answer, he clicks to stop when he finishes making the move. When Stop is clicked, the template will respond to what movement has been made. If it hits, the user marks as True Positive, if not, it marks as False Positive

      The figure on the left shows the data collection screen and the one on the right shows the evaluation screen for new entries.

    evaluate
    • SRC/API: Api is a rest service that implements the trained model, and receives app evaluation data to classify a new entry.

      To run the API, navigate to the project folder and run the command below:

      $ python -m api
    • SRC/Intra: The project below is responsible for preprocessing the raw data, and extracting raw data characteristics to assemble the training data set.

      To run the Intra project, navigate to the project folder and run the command below:

      $ python -m intra
    • Notebooks: It documents the characteristics used and explains each one of them. It also documents any analysis of the chosen models to see which makes the best data modeling and which one performs best.

    Flow

    This basis demonstrates the process from data collection to the movement of a machine learning model.

    1. The application sends the data collected from the sensors in json format to Firebase.

    2. Data is saved in the Firebase Database service.

    3. With data saved in the Firebase database, the application responsible for fetching and processing data online is executed.

    4. The process receives the data in .json format and converts the file to .csv, and assembles a structure (The structure is described in detail in the notebook * Acquisition of characteristics *) in the file that will be used to extract the characteristics.

    5. The Extraction process reads all the files containing the raw data and extracts the characteristics (The extraction of characteristics is described in detail in the * Characteristics * book) relevant to the movements, and creates the data set. After extraction, the data is written in .csv format and saved in the dataset folder.

    6. To train the learning model, the dataset is loaded from the datasets folder.

    7. The data is prepared before starting the training.

    8. Train the machine learning model.

    9. After the model is trained, the evaluation application sends the new data in json format to the classification service.

    10. The service receives the data, and sends to process them and extract the characteristics.

    11. The service receives the data, and sends to process them and extract the characteristics.

    12. Predicts entry

    13. Returns which movement was executed for the application.

    Visit original content creator repository
  • mrtos-portable-c28

    Microcontroller Real Time Operating System

    This is the portable code of MRTOS for the Texas Instruments C28x platform. To use this
    platform, please see the main mRTOS repository.

    The portable code uses the following interrupts

    • USER1, (interrupt #20, ISR_USER1), used for loading the first thread
    • RTOSINT, (interrupt #16, ISR_RTOSINT), implemented as the context switcher
    • INT14, (interrupt #14, ISR_CPUTIM2), CPUTIM2, used for generating system heartbeats

    The portable code does not configure CPUTIM2. The configuration of CPUTIM2 must be
    set before os_start(), and the timer must be disabled. When the operating
    system starts, it will enable the timer automatically.

    Do not use EINT and DINT instructions in the application. Use the nested
    version provided by the operating system instead (os_enter_critical() and
    os_exit_critical()). Be sure to replace the macros in TI’s peripheral library,
    too, if it’s being used. Manipulating interrupts directly in the application can
    really mess up the operating system’s shared variable access locks.

    Features

    • FPU support
    • Low power mode (when idle)
    • Thread starts with interrupts enabled and EALLOW disabled

    Settings

    Setting Value
    CPUTIM2 interrupt frequency 100Hz (recommended)
    RTOSINT interrupt priority lowest* (recommended)
    CPUTIM2 interrupt priority highest* (recommended)
    USER1 interrupt priority highest* (recommended)

    *: The interrupt priorities on the C28x core are hard-coded onto the silicon,
    but the manual provides several ways to implement priorities in software.
    The setting is recommended but not required. It is good enough to use
    the hardware priorities but the interrupt latency might be slightly longer.

    Comments for this particular platform

    On modern microcontrollers, interrupt service routines uses a seperate stack.
    On C2000, however, interrupts will use the stack of whichever process is currently
    running. This increases the chances of a stack overflow. When allocating stack,
    care must be taken to make sure the stack is sufficient for not only the current
    thread context, but also for interrupts wherever current thread context is preempted.

    Code Example

    // defined in rtos portable code
    extern interrupt void ISR_RTOSINT(void);
    extern interrupt void ISR_CPUTIM2(void);
    extern interrupt void ISR_USER1(void);
    
    // These variables are defined by the linker 
    // as instructed by the linker command file
    /* 
     * Example linker section:
     * 	.esysmem :> RAM, PAGE=0,
     *			LOAD_START(_esysmem_start),
     *			LOAD_SIZE(_esysmem_size)
     *
     * .esysmem is the "heap" section generated by
     * the compiler. Modify linker settings to 
     * change the size of this section.  
     */
    extern int esysmem_start;
    extern int esysmem_size;
    
    int main(void)
    {
        // initialize hardware, configure CPUTIM2 (do not enable it)
    	
        // ...
    	
        // Fill PIE vector table
        PIE_VECT_TABLE.RTOSINT = ISR_RTOSINT;
        PIE_VECT_TABLE.TINT2 = ISR_CPUTIM2;
        PIE_VECT_TABLE.USER1 = ISR_USER1;
    
        // enable PIE
        PIECTRL.PIECTRL.bit.ENPIE = 1;
        
        // initialize operating system
        os_config_t config;
        config.p_pool_mem = &esysmem_start;
    
    	// suppress warning #70: "integer conversion results in truncation"
    	// because we know that the size of the heap will be smaller than 
    	// the maximum value of OSPORT_UINT_T. If you want to use a longer
    	// OSPORT_UINT_T, that's fine.
    	// WARNING: esysmem_size must be a multiple of OSPORT_MEM_ALIGN
    #pragma diag_push
    #pragma diag_suppress 70
        config.pool_size = (uintptr_t)(&esysmem_size);
    #pragma diag_pop
    
        os_init(&config);
        
        // create some operating system objects here: threads, semaphores, etc.
        
        // ... 
        
        // start the operating system, run the first highest priority thread
        os_start();
        
        // reaches the point of no return. The execution should
        // never get here. If it does, something went wrong.
        
        for( ; ; )
       		;
        
        return 0;
    }

    Visit original content creator repository

  • awesome-repositories

    📕 Useful GitHub Repositories

    A curated list of GitHub Repositories full of FREE Resources.

    Message

    ▶️ Content


    API

    Repository Description License
    Public-Apis A collective list of free APIs MIT
    GraphQL-Apis 📜 A collective list of public GraphQL APIs MIT

    Artificial Intelligence

    Repository Description License
    Machine Learning A curated list of awesome Machine Learning frameworks, libraries and software CC0-1.0
    handson-ml A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning Apache-2.0

    Awesome

    Repository Description License
    Awesome 😎 Awesome lists about all kinds of interesting topics CC0-1.0
    Awesome 💻 🎉 An awesome & curated list of best applications and tools for Windows CC0-1.0
    Awesomeness A curated list of awesome awesomeness CC-BY-4.0

    Books

    Repository Description License
    Free Programming Books 📚 Freely available programming books CC-BY-4.0
    GoBooks List of Golang books CC-BY-4.0
    JavaScript 📚 List of books to master JavaScript Development 🚀 No License
    Mind Expanding Books 📚 Books everyone should read CC0-1.0
    Python Books 📚 Directory of Python books CC-BY-4.0
    TypeScript Books 📚 The definitive guide to TypeScript and possibly the best TypeScript book 📖. Free and Open Source 🌹 CC-BY-4.0
    frontend-dev-bookmarks 📚 Manually curated collection of resources for frontend web developers. CC-BY-4.0

    Career

    Repository Description License
    Become A Full Stack Web Developer Free resources for learning Full Stack Web Development MIT
    Clean Code JavaScript 🛁 Clean Code concepts adapted for JavaScript MIT
    Coding Interview University A complete computer science study plan to become a software engineer. CC-BY-SA-4.0
    Computer Science (OSSU) 🎓 Path to a free self-taught education in Computer Science! MIT
    CS Courses 📚 List of awesome university courses for learning Computer Science! No License
    Developer Roadmap Roadmap to becoming a web developer in 2021 Custom
    Easy Application Over 400 software engineering companies that are easy to apply to MIT
    FrontEnd Developer Interview Questions A list of helpful front-end related questions you can use to interview potential candidates, test yourself or completely ignore MIT
    Hiring Without Whiteboards ⭐️ Companies that don’t have a broken hiring process MIT
    Interview This An open source list of developer questions to ask prospective employers CC BY-SA 3.0
    JavaScript Algorithms 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings MIT
    Leetcode Patterns A curated list of leetcode questions grouped by their common patterns GPL-3.0

    Competitive Programming

    Repository Description License
    ACM-ICPC Algorithms Algorithms used in Competitive Programming No License
    Awesome Competitive Programming A curated list of awesome Competitive Programming, Algorithm and Data Structure resources CC-BY-4.0
    Competitive Code A repo for interesting Competitive Coding problems MIT
    Competitive Programming Resources Competitive Programming & System Design Resources. MIT

    CheatSheets

    Repository Description License
    Async-JavaScript Cheatsheet for promises and async/await. MIT
    C++ Modern C++ Cheatsheet No License
    Data Science List of Data Science Cheatsheets to rule the world MIT
    Docker 🐋 Docker Cheat Sheet 🐋 MIT
    Emoji A markdown version emoji cheat sheet MIT
    Git and GitHub A list of cool features of Git and GitHub. MIT
    Python Comprehensive Python Cheatsheet No License
    Vim Shortcuts that will help you to become an advance VIM user. CC-BY-4.0
    CSS CSS Cheat Sheet – A reference for CSS goodness No License

    Cloud

    Repository Description License
    AWS A curated list of awesome Amazon Web Services (AWS) libraries, open source repos, guides, blogs, and other resources. Featuring the Fiery Meter of AWSome. CC-BY-4.0

    Courses & Certifications

    Repository Description License
    GCP Training Labs and demos for courses for GCP Training Apache-2.0

    Development

    Repository Description License
    Beautiful Docs Pointers to useful, well-written, and otherwise beautiful documentation. No License
    Design Resources for Developers Curated list of design and UI resources from stock photos, web templates, CSS frameworks, UI libraries, tools and much more MIT
    DevYouTubeList List of Development YouTube Channels MIT
    Programming Talks Awesome & interesting talks about programming No License

    Frameworks

    Repository Description License
    CSS List of awesome CSS frameworks CC-BY-4.0
    Electron Useful resources for creating apps with Electron CC0-1.0
    .NET A collection of awesome .NET libraries, tools, frameworks and software CC0-1.0
    Laravel A curated list of bookmarks, packages, tutorials, videos and other cool resources from the Laravel ecosystem CC-BY-4.0
    Vue 🎉 A curated list of awesome things related to Vue.js MIT

    Front-End Development

    Repository Description License
    Front End Web Development This repository contains content which will be helpful in your journey as a front-end Web Developer MIT
    HTML5 📝 A curated list of awesome HTML5 resources MIT
    React Curated List of React Components & Libraries CC0-1.0
    Animate CSS 🍿 A cross-browser library of CSS animations. As easy to use as an easy thing MIT

    Back-End Development

    Repository Description License
    Flask – Python framework Flask is a lightweight WSGI web application framework written in Python. CC0-1.0 License
    Docker 🐳 A curated list of Docker resources and projects Apache-2.0 License
    Vagrant A curated list of awesome Vagrant resources, plugins, tutorials and other nice things.
    Kubernetes A curated list for awesome kubernetes sources 🚢🎉 BY-NC 4.0

    Git & GitHub

    Repository Description License
    Basic Learn all you need to get started with Git and GitHub and get your first pull requests going.
    Git And GitHub Guide A pictorial guide for learning Git and Github
    Git Reference Documentation A complete listing of Git’s features and commands. The documentation is also available as a free ebook titled Pro Git.
    GitHub Learning Lab Get the skills you need without leaving GitHub. GitHub Learning Lab takes you through a series of fun and practical projects, sharing helpful feedback along the way.

    Programming Languages

    Repository Description License
    C A curated list of awesome C frameworks, libraries, resources and other shiny things. Inspired by all the other awesome-… projects out there CC-BY-SA-4.0
    C++ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-… stuff MIT
    Go A curated list of awesome Go frameworks, libraries and software MIT
    Java A curated list of awesome frameworks, libraries and software for the Java programming language CC-BY-4.0
    JavaScript 🐢 A collection of awesome browser-side JavaScript libraries, resources and shiny things CC-BY-4.0
    Lua A curated list of quality Lua packages and resources. CC0-1.0
    PHP A curated list of amazingly awesome PHP libraries, resources and shiny things WTFPL
    Python A curated list of awesome Python frameworks, libraries, software and resources CC-BY-4.0
    R A curated list of awesome R packages, frameworks and software CC BY-NC-SA 4.0
    Rust A curated list of Rust code and resources CC0-1.0
    Shell A curated list of awesome command-line frameworks, toolkits, guides and gizmos CC0-1.0
    Swift A collaborative list of awesome Swift libraries and resources CC0-1.0
    V A curated list of awesome V frameworks, libraries, software and resources. CC0-1.0

    Projects

    Repository Description License
    project ideas Curated list of Machine Learning, NLP, Vision, Recommender Systems Project Ideas MIT
    50projects50days 50+ mini web projects using HTML, CSS & JS MIT
    Vanilla Web Projects Mini projects built with HTML5, CSS & JavaScript. No frameworks or libraries
    React Projects A collection of projects built on the React library [No License]

    Security

    Repository Description License
    Hacking A collection of various awesome lists for hackers, pentesters and security researchers CC0-1.0
    Web Security A curated list of Web Security materials and resources. CC0-1.0

    System Design

    Repository Description License
    Grokking System Design Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. GPL-3.0
    System Design Interview System design interview for IT companies No License
    System Design Primer Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. CC-BY-SA-4.0
    System Design Resources These are the best resources for System Design on the Internet GPL-3.0

    Web Development Tools

    Repository Description License
    JetBrains Student License Free individual licenses of the award-winning professional developer tools from JetBrains for students and faculty members.

    Unix

    Repository Description License
    About Unix Key Unix terms and ideas; website created by Indiana University
    Basic Unix Commands a guide from Oxford University on Unix commands
    linux-tutorials Linux tutorials at the beginner, intermediate, and advanced levels, from the Linux Foundation.
    EDX: Introduction to Linux great intro to upper-intermediate course on what the hell is Linux

    Web

    Repository Description License
    Proxy List A list of free, public, forward proxy servers. UPDATED DAILY! MIT
    Streaming a curated list of awesome streaming frameworks, applications, etc CC-BY-SA-4.0
    WPO 📝 A curated list of Web Performance Optimization. Everyone can contribute here! MIT

    License

    CC0-1.0 License

    Visit original content creator repository

  • BioSign-Sentinel

    Bio: Cyberpunk-Inspired Pathfinding Daemon ACO Solver

    Jacking into the Bionet Maze:

    Welcome to Bio-Sign Sentinel, where swarms of digital ants navigate the neon-lit corridors of data to solve complex routing problems. This project implements an Ant Colony Optimization (ACO) algorithm to tackle the Traveling Salesman Problem (TSP) with a cyberpunk twist.

    In the neon-lit sprawl of our digital future, BioSign Sentinel emerges as a cutting-edge pathfinding daemon. Utilizing the bio-inspired Ant Colony Optimization (ACO) algorithm, this tool navigates the complex networks of Neo-Kyoto and Cyber-Detroit or (Neo-{insert your city}) with unparalleled efficiency.

    In the sprawling megacities of tomorrow, where neon bleeds into the night and corporate AIs rule the datascape, your health is your most precious commodity. BioSign Sentinel isn’t just software – it’s your first line of defense against the viral threats lurking in the shadows of Neo-Kyoto and the back alleys of Cyber-Detroit.

    This rapid symptom analysis daemon is designed to flag potential COVID-19 or COVID-32 infections before they compromise your system. Don’t trust the corp-sponsored clinics or back-alley ripperdocs – arm yourself with data and stay one step ahead of the pandemic.

    Core Modules:

    1. ACOAlgorithm.cpp/.h: The neural network of our digital ants, implemented in C++ for blazing speed. The neural core of our digital ant swarm, coded in C++ for maximum processing speed.

    2. Main.java: The command center GUI, bridging the gap between user and machine. The cyberspace interface, bridging wetware and software through a Java-based GUI.

    3. visualize.py: Our augmented reality display, rendering optimized paths in vivid detail. Our augmented reality module, rendering optimized paths using Python’s matplotlib and networkx.

    4. generate_data.py: The matrix architect, spawning vast cityscapes for our ants to explore. The virtual cityscape architect, generating vast datasets for our pathfinding swarms.

    Features:

    • Lightning-fast symptom analysis (fast performance)
    • Cyberpunk-inspired GUI for immersive user experience (GUI Cyberpunk inspired)
    • Secure, encrypted data transmission (Security was priority)
    • Compatible with most cybernetic implants and bio-mods (Compatible with most PC and Laptops)

    Technical Specifications:

    ACO Algorithm Implementation:

    • Pheromone trail initialization
    • Stochastic solution construction
    • Pheromone update mechanism
    • Local search optimization

    Performance Metrics:

    • Time complexity: O(n^2 * m), where n is the number of cities and m is the number of ants
    • Space complexity: O(n^2) for pheromone matrix storage

    Customizable Parameters:

    • α (alpha): pheromone influence factor
    • β (beta): heuristic information influence factor
    • ρ (rho): pheromone evaporation rate
    • Q: pheromone deposit amount

    Data Structures:

    • Graph representation using adjacency matrix
    • Priority queue for efficient city selection

    Visualization Capabilities:

    • Real-time path rendering
    • Pheromone intensity heat map
    • Convergence analysis plots

    Quickhack Guide:

    • Clone the repo:
      git clone https://github.com/yourusername/BioSign-Sentinel.git
      cd BioSign-Sentinel

    • Compile the C++ core:
      g++ -shared -fPIC -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux ACOAlgorithm.cpp -o libACOAlgorithm.so

    • Compile the Java interface:
      javac Main.java

    • Generate a virtual cityscape:
      python generate_data.py

    • Jack in and execute:
      java -Djava.library.path=. Main

    • Load your generated city data and watch the digital swarm optimize in real-time.

    Disclaimer:

    BioSign Sentinel is a street-level diagnostic tool, not a replacement for professional medical wetware. Use at your own risk, runner.

    Installation:

    • Download the BioSign Sentinel package from the darknet (Github on clearnet)
    • Verify the digital signature to ensure no corp tampering (open-source security & licensing)
    • Install using your cyberdeck’s package manager (Windows or Linux)
    • Jack in and run the initialization sequence (launch and run exe with data)

    System Requirements:

    • JDK 8+
    • Python 3.x with matplotlib and networkx
    • C++ compiler (g++ recommended)
    • At least 2GB of dedicated cyberdeck memory (computer memory)
    • CUDA-compatible GPU for parallel processing (optional)

    Contribute to the Network:

    Feel the pulse of the code? Want to enhance our digital ecosystem? Pull requests are welcome. For major upgrades, open an issue first to discuss what you’d like to change.

    License:

    This project is licensed under the MIT License – see the LICENSE.md file for details.

    Acknowledgments:

    • The ghosts in the machine
    • The neon-lit streets of our imaginations
    • Caffeine. Lots of caffeine.

    Outro:

    Remember, in this chrome jungle, information is power. Stay informed, stay alive.

    Visit original content creator repository

  • pgn-reader

    Screenshot

    PGN Reader

    Lightweight, blazingly fast (overly optimized) CLI for reading .pgn files


    Report a bug Suggest a feature


    License Version Latest Release

    Overview

    PGN Reader is a user-friendly and efficient application that allows you to read .pgn files smoothly through a terminal. The application is incredibly fast and lightweight, which means it can work on almost any device or system. It supports Chess 960 and can handle variations, comments, and annotations with clean and readable formatting. PGN Reader provides a simple way to access all the necessary information from your .pgn files.

    Files

    PGN reader consists of:

    • README.md > File explaning everything about the application
    • LICENSE > License under which the program must be used
    • EXAMPLE.png > Screenshot of a terminal while viewing a game in PGN Reader
    • example.pgn > Annotated PGN file containing The Game Of The Century
    • src > Directory with source code of the application

    Usage

    Using and compiling PGN Reader is as easy as it gets. Download the entire project and then compile the source code.
    NOTE: you have to compile all .c files, not only main.c

      gcc -o pgn-reader ./src/*.c
    

    After the program is compiled, view .pgn file as follows

      <executable> <path to .pgn file>
      ./pgn-reader ./example.pgn
    

    FAQ

    Q: What is a .pgn file?

    A: It’s a file extension specifically used for saving chess games. More information on wikipedia


    Q: How do I save my game as a .pgn file?

    A: The quickest way is to use lichess and import a game to their site (you can get a computer analysis for free too). Then, in an analysis tab, you can export your game as a .pgn.


    Q: When will I ever need this program?

    A: If ever an alien civilization destroys all network infrastructure and asks you to present them The Game of the Century within a few milliseconds, or otherwise they will destroy everything you know and love, only then will your gratitude be immeasurable.

    Visit original content creator repository
  • Pritam_Portfolio

    Pritam_Portfolio

    This is a personal portfolio website built using React, Tailwind CSS, Vite, React Router DOM, Framer Motion, React Icons, React Tilt, React Intersection Observer, email.js, and Sanity backend.

    The website consists of five main sections: Hero, Service/About, Skills, Projects, and Contact.

    Technologies Used

    • React: A popular JavaScript library for building user interfaces.
    • Tailwind CSS: A utility-first CSS framework for rapidly styling your application.
    • Vite: A fast build tool for modern web development.
    • React Router DOM: A routing library for React applications.
    • Framer Motion: A production-ready motion library for React.
    • React Icons: A collection of icons for React applications.
    • React Tilt: A lightweight 3D parallax tilt effect library for React.
    • React Intersection Observer: A wrapper around the Intersection Observer API for React.
    • email.js: A service for sending emails directly from JavaScript.

    Project Structure

    • The public directory contains static files such as favicon and _redirects file.
    • The src directory contains the main source code for the portfolio website.
    • The components directory contains reusable components and sections of the website.
    • The pages directory contains individual pages of the website.
    • App.js is the entry point of the application.
    • index.js is the main JavaScript file that renders the application.
    • .gitignore specifies files and directories that should be ignored by Git.
    • package.json contains information about the project and its dependencies.
    • README.md (the file you are currently reading) provides information about the project.

    Contributing

    If you’d like to contribute to this project, please follow these guidelines:

    1. Fork the repository on GitHub.
    2. Create a new branch for your feature or bug fix.
    3. Make your changes and commit them.
    4. Push your changes to the branch.

    Contact

    If you have any questions or suggestions, feel free to reach out to me:

    Name: Pritam Ghosh

    Email: pritamattwork@gmail.com

    Portfolio: https://pritam-ghosh.netlify.app/

    Visit original content creator repository

  • smart-invoice-landing-page

    Smart Invoice landing Page

    About Project

    This project is an easy-to-use fullstack Online Invoicing application for creating and Sending invoices to customers, suiteable for Startups, Business Owners and Freelancers.

    Application Features

    -Add Customers or clients.

    • Create a new invoice
    • Compose and quote invoice.
    • Send invoice to customer
    • Download invoice as PDF. -Record Payment

    Application Functionalities

    • You firstly add a customer you would want to send an invoice to. Create an invoice to send to the customer. Add the billing information, item description, amount, quantity and discount if any.

    You can also add more items, edit or delete item from your invoice. By clicking on the Send Invoice button, you can send invoice via email to the customer. You can also download the invoice as PDF.

    Live view of the application Demo can be found here- Smart Invoice Landing Page

    Pictorial View of the Application

    Landing page display.

    landing

    Dashboard View dashboard

    Sample Invoice Display: Sample-Invoice

    Create An Invoice: Create-An-Invoice

    How to use the application

    Table of Contents

    Getting Started

    Dependencies

    The project is built with;

    • React JS -Library for building user interfaces
    • React Bootstrap – The most popular front-end framework for building React application.
    • CSS

    It uses Node.js >= 12.18.3

    Prerequisites

    Ensure you have NodeJS installed by entering node -v on your terminal If you don’t have NodeJS installed, go to the NodeJS Website, and follow the download instructions

    Tools Required

    The following tools are required to run this application:

    • A text editor like Visual Studio Code
    • Command Line

    Getting the source code

    You can clone the repository directly using this command: git clone https://github.com/jamesoyanna/smart-invoice-landing-page.git

    Installation

    Installation steps:

    Node.js and Yarn or Npm Your computer must have installed nodejs, and yarn to run this application You can download Node.js from https://nodejs.org and yarn from https://yarnpkg.com/lang/en/docs/install/ . NPM comes bundled with Node.js

    nodejs

    Install Npm Packages

    After clonning the application, You will have to install all the dependencies and packages. You can do this by running yarn or npm install from the root of the project folder to install.

    Development server

    Running the App

    Run yarn start or npm stall from the root of your project to start a dev server. 
    Navigate to http://localhost:3000/. 
    The app will automatically reload if you make changes to any of the source files.
    

    Author

    James Oyanna

    Visit original content creator repository
  • PiHole-Dark

    PiHole-Dark

    A Dark theme for the PiHole admin page. (Now FTL compatible)

    Example dashboard


    Easy install

    1. open a terminal (or SSH if you’re remoting in) ( Ctrl + Alt + T )
    2. Type: cd /var/www/html/
    3. Type: sudo wget https://raw.githubusercontent.com/lkd70/PiHole-Dark/master/install.sh
    4. Type: sudo chmod +x install.sh
    5. Type: sudo ./install.sh
    6. Follow the onscreen instructions!

    Easy Uninstall

    Not a fan of the style? Sorry to hear, please feel free to leave some feedback on the Official Thread. Sadly this theme isn’t for everyone, so here’s a simple method to restore the origional beauty of PiHole:

    1. open a terminal (or SSH if you’re remoting in) ( Ctrl + Alt + T )
    2. Type: cd /var/www/html/admin/
    3. Type git reset --hard
    4. Go leave some feedback so we know what you didn’t like!

    Suggestion?

    Something you’d like to see? Or maybe there’s an incompatibility with a newer version of pi-hole? Please open an issue or make a pull request!


    FAQ

    Q: Yuck! Why is the background still white??!? How could you do this to me?

    First of all, I’d like to say sorry for your eyes, I’m sure they hurt the way mine did upon first seeing that sight.
    Let’s look at two possible solutions to this.

    1. Create your own pretty background image! (or grabbing one from a background tile/pattern website)

    You can easily replace the ugly image in /var/www/html/admin/img/boxed-bg.jpg with a pretty dark one.

    2. To hell with the box! View the website without the 4:3 boxed view.

    You can change to a wide-view from the admin website by navigating to: Settings -> API / Web Interface -> Web interface settings and un-checking the Use boxed layout option.

    Q: I’ve installed the theme and nothing has changed? Is this a scam? I want my money back!

    Refunds cost $1 each, please contact me at totallylegitemail@contact.com

    (Have you tried refreshing your browsers cache? Chances are it’s still grabbing the old files)


    Credits

    All credits to the original creators of these files, I am merely an editor.
    All credits to the Pi-Hole Team for their great platform.

    Do follow the individual licenses of these files as supplied by the authors.

    Inspired by this thread.

    Thanks to deathbybandaid for the new easy install method!

    Visit original content creator repository

  • graphsurge

    Graphsurge: Graph Analytics on View Collections using Differential Computations

    Continuous integration

    Graphsurge is a new system for performing analytical computations on multiple snapshots or views of large-scale static property graphs. Graphsurge allows users to create view collections, a set of related views of a graph created by applying filter predicates on node and edge properties, and run analytical computations on all the views of a collection efficiently.

    Graphsurge is built on top of Timely Dataflow and Differential Dataflow, which provides two huge benefits:

    • Differential Dataflow can incrementally maintain the results for any general computation, including cyclic or iterative computations (which include many graph algorithms such as Connected Components. Analytical computations in Graphsurge are expressed using Differential operators and enables reusing computation results across the views of a collection instead of running computations from scratch on each view. This results in huge savings on the total runtime.
    • We use the Timely execution engine to seamlessly scale both the materialization of view collections and running analytical computations to a distributed environment, similar to using other execution frameworks such as Spark or Flink.

    Graphsurge stores view collections using a form of delta encoding, where the data for a view GVi represent its difference with the previous view GVi-1. This representation can also be directly used as inputs to Differential Dataflow computations.

    In general, the runtime of a black-box differential computation (such as the user-defined computations in Graphsurge) is correlated with the total number of diffs of a view collection. Graphsurge enables 2 key optimizations based on this observation:

    • Collection Ordering: The total number of diffs of a view collection depends on the order the views (similar views placed next to each other will generate less diffs) and we want to reorder a given set of views to get the lowest number of diffs. This Collection Ordering Problem is related to the Consecutive Block Minimization Problem, which is NP-Hard! Graphsurge solves this problem using a constant-factor approximation algorithm (resulting in up to 10x less diffs in our experiments).

    • Adaptive Collection Splitting: Maintaining computation results unsurprisingly implies an overhead for Differential Dataflow, as it needs to check the entire history of a key to determine the effect of a new update. This overhead is especially large for cases where the number of diffs of a view are high, or for computations (like PageRank) which results in a large number of output changes even for small number of input updates. In such cases, it is faster to run the computation on a view from scratch instead of trying to reuse results from previous views.

      Graphsurge keeps track of the correlation between the number of the diffs and the actual computation time when running differentially and also when rerunning from scratch. It uses a linear regression model to adaptively decide at runtime to split the view collection at the point where rerunning from scratch is predicted to be faster than to continue running differentially.

    More details on our techniques and experimental results can be found in our paper.

    Using Graphsurge

    Graphsurge is written in Rust. To run the Graphsurge cli, download and build the binary:

    $ git clone https://github.com/dsg-uwaterloo/graphsurge && cd graphsurge
    $ cargo build --release
    $ ./target/bin/graphsurge

    Set the number of worker threads and process id:

    graphsurge> SET THREADS 4 AND PROCESS_ID 0;

    Load a graph:

    graphsurge> LOAD GRAPH WITH
        VERTICES FROM 'data/small_properties/vertices.txt' and
        EDGES FROM 'data/small_properties/edges.txt'
        COMMENT '#';

    Create a view collection:

    graphsurge> CREATE VIEW COLLECTION Years WHERE
        [year <= 2000 and u.country = 'canada' and v.country = 'canada'],
        [year <= 2005 and u.country = 'canada' and v.country = 'canada'],
        [year <= 2010 and u.country = 'canada' and v.country = 'canada'];

    Run computations:

    $ mkdir bfs_results
    graphsurge> RUN COMPUTATION wcc ON COLLECTION Years SAVE RESULTS TO 'bfs_results';

    Running in a distributed environment:

    To run Graphsurge on multiple machines, say on 2 hosts server1 and server2, start Graphsurge and set the process ids:

    # On server1
    graphsurge> SET THREADS 32 AND PROCESS_ID 0;
    # On server2
    graphsurge> SET THREADS 32 AND PROCESS_ID 1;

    Then run the same queries on both of them. Make sure that server1 and server2 can access each other at the specified port.

    graphsurge> LOAD GRAPH WITH
        VERTICES FROM 'data/small_properties/vertices.txt' and
        EDGES FROM 'data/small_properties/edges.txt'
        COMMENT '#';
    graphsurge> CREATE VIEW COLLECTION Years WHERE
        [year <= 2000 and u.country = 'canada' and v.country = 'canada'],
        [year <= 2005 and u.country = 'canada' and v.country = 'canada'],
        [year <= 2010 and u.country = 'canada' and v.country = 'canada']
        HOSTS 'server1:9000' 'server2:9000';
    graphsurge> RUN ARRANGED_DIFFERENTIAL COMPUTATION wcc on COLLECTION Years
        HOSTS 'server1:9000' 'server2:9000';

    The same process can be repeated for additional hosts machines.

    Writing new computations:

    Graphsurge already has implementations for a set of common graph algorithms. New computations can be written using the Analytics Computation API. You can see examples of how to use the API for bfs and scc.

    Check the experiments folder for examples on how to use Graphsurge.

    Visit original content creator repository