teleren/devto huggingface dataset:
New ideas for iOS reinforcement protection
Tags: webdev
Published: 2023-08-29 09:07:22


IOS reinforcement protection is a next-generation reinforcement product launched for the iOS platform based on virtual machine source code protection technology. It is possible to deeply confuse and reinforce executable files in iOS apps, and use innovative virtual machine technology to encrypt and protect code to prevent malicious tampering of code and resource files in applications. Ipa Guard ensures installation and testing on the iPhone by modifying the binary data (code module configuration) in the Macho file in the IPA file, as well as the binary data (file module) of other files in the IPA, and re signing the IPA.
Technical functions
Ipa Guard mainly includes the following six categories of functions:
1. Comprehensive code confusion
2. Resource file processing
3. No need for source code for greater security
4. Debug information cleaning
5. Instant test run
6. Unrestricted development platform
Here is a detailed tutorial:
Step 1: Download iOS Application IPA File Obfuscation Encryption Protection Tool (http://ipaguard.com).
Download address: iOS Application IPA File Obfuscation Encryption Protection Tool (http://ipaguard.com).
Ipa Guard is a powerful ipa obfuscation tool that directly obfuscates and encrypts ipa files without the need for iOS app source code. No restrictions on OC, Swift, Flutter, React Native, H5 apps. The cross platform version of the tool is available for Windows, Linux, and Mac systems using ipaguard: ipaguard. com.
Step 2: Register an iOS Application IPA File Obfuscation Encryption Protection Tool (http://ipaguard.com) account.
The main interface is as follows:
Briefly introduce the usage of this tool:
1. Login, as there is no account available, when registering, please enter the correct email address. We will register your account and send the account information to the designated email address; Just output the account password and log in

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pg50a626e63oyvoz1pzi.png)
2. Function introduction, I mainly used the three functional parts of the tool here

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rmtwniu8h7714x6qws6z.png)
Mongoose Adapter for Cerbos Query Plans
Tags: tutorial, security, opensource
Published: 2023-08-29 09:05:16

The Cerbos [Query Plan](https://cerbos.dev/blog/filtering-data-using-authorization-logic) capability addresses a complex challenge in decoupled authorization - specifically, determining the list of resources for which a user possesses a particular permission. Instead of the inefficient approach of fetching all instances of a resource type and then individually checking permissions (which would seriously impact performance), Cerbos offers a query plan. This plan provides your application with a structured set of conditions (AST) that can be applied to your data retrieval logic. The resulting conditions are derived from the policies and are optimized to retrieve only those instances from the data store that a user is permitted to access.

However, translating this set of conditions (AST) into a relevant WHERE clause or filter can be difficult. To simplify this process, we have developed adapters for popular Object-Relational Mapping (ORM) frameworks. These adapters handle the conversion for you. We are now pleased to introduce an adapter for Mongoose to our collection.

By using this adapter, implementing result filtering based on policies becomes straightforward. You simply need to pass the plan to the adapter and then include the resulting conditions in the find method of your models.

```js
import { GRPC as Cerbos } from "@cerbos/grpc";
import mongoose from "mongoose";

import { queryPlanToMongoose, PlanKind } from "@cerbos/orm-mongoose";

// connect to mongo
await mongoose.connect("mongodb://127.0.0.1:27017/test");
// connect to Cerbos PDP
const cerbos = new Cerbos("localhost:3592", { tls: false });

// Mongoose models (schema excluded for brevity)
const MyModel = mongoose.model("MyModel", ....);

// Fetch the query plan from Cerbos passing in the principal
// resource type and action
const queryPlan = await cerbos.planResources({
  principal: {....},
  resource: { kind: "resourceKind" },
  action: "view"
})

// Generate the mongoose filter from the query plan
const result = queryPlanToMongoose({
  queryPlan,
  fieldNameMapper: {
    "request.resource.attr.aFieldName": "mongooseModelFieldName"
  }
});

// The query plan says the user would always be denied
// return empty or throw an error depending on your app.
if(result.kind == PlanKind.ALWAYS_DENIED) {
  return console.log([]);
}

// Pass the filters in as where conditions
// If you have prexisting where conditions, you can pass them in an $and clause
const result = await MyModel.find({
  ...result.filters
});

console.log(result)
```

You can find more details on the [query plan repo](https://github.com/cerbos/query-plan-adapters/tree/main/mongoose) - which also contains adapters for [Prisma](https://www.prisma.io/) and [SQLAlchemy](https://www.sqlalchemy.org/) - as well as a fully functioning application using Mongoose as its ORM.
Express JS Problem
Tags: javascript, express, react
Published: 2023-08-29 08:52:16

Hey Devs, i am here making my first working project it has mongodb in background and Express API Routes. and i am stuck here with Express, Server Data Is Perfectly being sent to react also the path is correct can you tell me why it is giving me 404 error. i am sending a array of files i wanted to create something like folder upload just like google drive and store it into my uploads folder. any help would be Fine.
#LearnedToday: FileSystemAccess API
Tags: learnedtoday, javascript, webdev, file
Published: 2023-08-29 08:52:00

🤔  What if you could manage the device's files with a web app frontend?

😱  Well, YOU CAN ALREADY DO IT!!!

📚 The [FileSystemAPI](https://developer.mozilla.org/en-US/docs/Web/API/File_System_API) allows you to read, write and manage the device files and folders.

😍 This is what we needed to finally get rid of desktop apps once and for all! Combined with [PWA](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps), [Push Notification](https://developer.mozilla.org/en-US/docs/Web/API/Push_API), [ServiceWorker](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) and [WebWorker](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API) functionalities, we are now able to create an "installable desktop web app".

😢 Unfortunately, not all that glitters is gold... It’s currently supported only by **Chromium** browsers, but I'm sure it will be supported by the other browsers in a short time 💪

## Demo project

👨‍💻  I created a **vanilla JavaScript** [opensource project](https://github.com/danielzotti/file-explorer-web) to test `FileSystemAPI` features like:
- reading file properties
- reading a directory with its children recursively (with a little help of [AsyncGenerators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AsyncGenerator) and [AbortController](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) for huge directories)
- media preview (with the help of [`createObjectURL`](https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL_static) to create the URL for `src` attribute of `<img>` and `<video>`, from the [`ArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer))
- create/edit/delete a text file.

🔗 [Demo](https://danielzotti.github.io/file-explorer-web) (remember to use **Chrome**!)

❓ Did you know about **FileSystemAPI**? In my opinion it is _one of the most revolutionary APIs_ of recent years!
Install Go (Golang) on a Linux
Tags: go, linux, ubuntu
Published: 2023-08-29 08:49:09

To install Go (Golang) on a Linux system, you can follow these steps:

- **Download Go**: Open a terminal window and use the `wget` command to download the Go installation package. You can find the latest version of Go on the official [Golang download page](https://golang.org/dl/).

   For example, to download Go version 1.17, you can use:

   ```bash
   wget https://golang.org/dl/go1.17.linux-amd64.tar.gz
   ```

- **Extract the Archive**: After downloading, you need to extract the downloaded archive. Use the `tar` command to extract it:

   ```bash
   tar -xvf go1.17.linux-amd64.tar.gz
   ```

- **Move Go**: Move the extracted Go directory to a location on your system. Traditionally, it's placed in the `/usr/local` directory. You'll need superuser (root) privileges for this:

   ```bash
   sudo mv go /usr/local
   ```

- **Set Environment Variables**: You need to set some environment variables to let your system know where Go is installed and where your Go workspace (where you'll develop your Go programs) is located. Add the following lines to your shell profile configuration file (e.g., `~/.bashrc`, `~/.zshrc`, or `~/.profile`):

   ```bash
   export GOPATH=$HOME/go
   export PATH=/usr/local/go/bin:$PATH:$GOPATH/bin
   ```

   Then, apply the changes to your current shell session:

   ```bash
   source ~/.zshrc ~/.bashrc  # or the appropriate configuration file
   ```

- **Verify Installation**: You can now verify that Go is installed correctly by opening a new terminal window and typing:

   ```bash
   go version

go1.17 linux/amd64
   ```

   You should see the installed Go version printed in the output.


![go version](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bwlvaq3lzj38oo4gkmcn.png)
Flutter + Firebase ; What else could one ask for?
Tags: help, techstack
Published: 2023-08-29 08:28:32

Since my recent decision to become an indie maker, I have got my hands dirty with possibly every stack available and concluded upon Flutter + Firebase. I can complete 99% of my planned projects with it. And I am astounded. It is too good to be true and I sure I am missing out something. Can some one explain what am I missing?

For context, I've been into Data Science for more that 9 years now, professionally. And the tech stack my DS works and deployment demands is mostly different than a full stack's. So I could be missing out something very silly.
How to convert Word to HTML file format via Java
Tags: java, html, programming, tutorial
Published: 2023-08-29 08:26:44

## Introduction:
An HTML file is a text file, written in Hypertext Markup Language, used to create web pages. It contains information such as the structure, content and style of the web page. Converting Word documents to HTML files can convert text, headings, paragraphs, lists, tables, images and other elements in Word documents into corresponding HTML tags and attributes. This transformation not only makes it easy to publish the content of the document on the web, but also ensures that the document is displayed consistently across different platforms and devices. The related methods are described below.

## Preparation
Take **IntelliJ IDEA 2018** as an example:

- Download Free Spire.Doc for Java from [this Link](https://www.e-iceblue.com/Download/doc-for-java-free.html) and decompress the package. 
- Create a new project in IDEA, and then click “File”- “Project Structure” - “Modules” - “Dependencies” in turn. 
- Choose the “JARs or Directories” under the “+”.
- Find the “Spire.Doc.jar” in the lib folder of the decompressed package and import it to the project.

## Code:
```java
import com.spire.doc.*;

public class WordToHtml {
    public static void main(String[] args) {

        //Create a Document instance
        Document document = new Document();

        //Load a Word document
        document.loadFromFile("sample.docx");

        //Save the document as HTML 
        document.saveToFile("output/toHtml.html", FileFormat.Html);
    }
}
```
In this code, the **Document** instance is first created. Call the **loadFromFile()** method to load a Word document, and finally save the document as an HTML file through the **saveToFile(String fileName, FileFormat fileFormat)**method.

**saveToFile(String fileName, FileFormat fileFormat)**method provided by [Free Spire.Doc for Java](https://www.e-iceblue.com/Introduce/free-doc-for-java.html) supports converting Word documents to various documents, such as [PDF](https://www.e-iceblue.com/Tutorials/Java/Spire.Doc-for-Java/Program-Guide/Conversion/Convert-Word-to-PDF-in-Java.html), [Image](https://www.e-iceblue.com/Tutorials/Java/Spire.Doc-for-Java/Program-Guide/Conversion/Convert-Word-to-Images-in-Java.html), [XPS](https://www.e-iceblue.com/Tutorials/Java/Spire.Doc-for-Java/Program-Guide/Conversion/Java-Convert-Word-to-XPS-XML-RTF-TXT-and-SVG.html).

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8bld0811cfd3m3nzsoap.png)
프론트엔드, 왜 하니?
Tags: frontend, discuss, learning
Published: 2023-08-29 07:50:06

## 🤔글을 쓰는 계기

IT 관련된 대외활동 질문 문항 중 단골 문항 중 하나로 **지원 동기**가 있다. 보자마자 머리가 아프고 어떻게 답변을 해야하는지 감도 잘 오지가 않는다. 키보드로 두들겨 보는 답변은 다음과 같다.

> 어쩌다보니 하게 됐어요.

웹개발 공부를 하다 보니 프론트엔드 쪽으로 어느새 관심이 가있었다. 어찌보면 솔직한 답변이다. 하지만 이런 답변을 적는다면 떨어질 것은 누구나 알고 있다. 충분한 고뇌와 통찰은 커녕 성의가 없는 답변을 하는 사람이 대외활동을 잘 할 거라고 믿을 수 있겠는가. 무의식적으로 프론트엔드를 선택했더라도 그 속에서 어떠한 이유가 있을 것이다. 그래서 이번 글에서는 **내가 프론트엔드를 공부하는 이유**를 정리했다. 

## 🚉높은 접근성: 쉽게 인터넷에서 찾을 수 있는 학습 자료

고등학생부터 대학교 1학년 정도까지는 학습 자료가 많아서 웹개발 공부를 했다. 우리 고등학교에는 정보 수업이 없어서 구글이 내 코딩 선생님이 되어주었고 제일 자료가 풍부한 분야가 웹이라 이 쪽을 공부하였다. 대표적으로 웹개발을 공부한 사이트는 [FreeCodeCamp](https://www.freecodecamp.org)이다. HTML, CSS, Javascript를 문제를 단계별로 해결할 수 있고 설명도 쉬워서 진도를 쭉 나갔다. 프로젝트 과제도 있어 random quote machine, weather app을 만들었다. 과제를 해결할 때 웬만한 웹 기술 정보는 [MDN](https://developer.mozilla.org)에서 찾을 수 있다. 내가 가질 수 있는 대부분의 질문은 [스택오버플로우](https://stackoverflow.com)에 등록되어 있다. MDN의 설명이 너무 복잡하다면 [w3schools](https://www.w3schools.com)를 읽고 나중에 심도있게 공부하면 되었다.

## 👀눈에 바로 보이는 결과

우선 프론트엔드가 무엇인지 위키피디아에서 찾아보면 다음과 같이 설명한다.

> Front-end web development is the development of the graphical user interface of a website, through the use of HTML, CSS, and JavaScript, so that users can view and interact with that website.

- 사용자가 볼 수 있는 UI를 HTML, CSS, Javascript를 이용하여 개발한다.
- 사용자는 UI를 통해 웹사이트와 상호작용할 수 있다.

서버를 개발하는 백엔드 개발과 비교했을 때 UI를 개발하다보니 내가 HTML, CSS, Javascript로 작성하는 코드의 결과를 볼 수 있다. 춤 영상 보기를 좋아하고 여행 다니면서 여러 아름다운 풍경 보기를 좋아하기 때문에 그래피컬하게 아름다운 결과가 나오면 굉장히 뿌듯했던 것 같다.

## 🤝 사용자 경험을 고려하는 과정에서 오는 흥미로움

기존에는 첫번째와 두번째 이유가 프론트엔드를 공부하는 주요한 동기였지만 최근에 들어서 사용자 경험을 고려하는 코드를 작성할 수 있다는 점이 핵심적인 공부 동기로 작용하고 있는 것 같다.

### 웹 접근성
[프론트와 UX의 연관성을 다루는 글](https://jbee.io/essay/about_frontend/#%ED%94%84%EB%A1%A0%ED%8A%B8%EC%97%94%EB%93%9C-%EA%B8%B0%EC%88%A0%EA%B3%BC-ux)을 읽으면서 '프론트엔드 개발과 UX를 연관지을 수도 있구나'라고 생각했다. 그러다가 이번 여름 방학에[코멘토](https://comento.kr/?index)에서 웹 접근성 직무부트캠프를 들으면서 더욱 확실하게 UX와의 연관성을 경험했다. 해당 캠프에서 맹인, 저시력자, 색각이상자(색맹/색약), 손가락이 없는 사람 등 다양한 종류의 사람뿐만 아니라 검색엔진 봇(SEO)까지도 접근이 용이한 웹 애플리케이션을 만드는 방법에 대해서 배웠으며 유명한 웹사이트의 웹 접근성  관련 문제점들을 찾고 개선사항을 작성하는 보고서를 작성했었다. 웹 접근성도 사용자의 제한 사항을 고려하는 과정이기 때문에 UX의 범주에 들어간다. 사람을 고려하면서 코드를 작성한다는 점 덕분에 해외 여행을 하는 동안에도 열정적으로 캠프에 참여할 수 있었다.

### 프론트엔드 성능 측정
 또한 [우아한 테코톡: 프론트엔드 성능 측정](https://www.youtube.com/watch?v=IRj9vKBy9CA&ab_channel=%EC%9A%B0%EC%95%84%ED%95%9C%ED%85%8C%ED%81%AC)에 나온 성능 지표인 LCP(Largest Contentful Paint, 가장 큰 이미지/텍스트 블록의 렌더링 시간), INP(Interaction to Next Paint, 상호작용에 따른 응답 시간), CLS(Cumulative Layout Shift, 비동기적 DOM 렌더링으로 인해 의도치 않은 컨텐츠와 인터렉션) 등도 결국 UX로 귀결되지 않다 싶다. 

### 백엔드와 비교
백엔드든 프론트엔드는 시스템(운영체제, 브라우저) 위에서 돌아갈 수 있는 코드를 작성할 수 있다는 점에서는 같지만 UX에 기여할 수 있는 부분이 많다는 점이 백엔드와 다른 것 같고 이 부분이 매력적이라 계속 공부하고 있는 것 같다.

##🕦 결론

접근성이 좋아 공부하기 편하고, UI를 작성하기 때문에 결과를 눈으로 확인할 수 있고, 사람을 고려하는 설계가 재미있어 나는 프론트엔드를 공부한다. 반대로 백엔드 공부하는 사람들은 어떤 점이 좋아서 빠져들었을까?
[Tiny] How to Upgrade Gradle Wrapper Using Custom Gradle Distribution
Tags: gradle, tiny
Published: 2023-08-29 07:33:39

In one of the previous posts, I wrote about [upgrading Gradle Wrapper](https://dev.to/pfilaretov42/tiny-how-to-upgrade-gradle-wrapper-3obl).

However, it does not cover the case when you have your own artefact repository, for instance, Artifactory.

In this case use `--gradle-distribution-url` parameter of the `wrapper` task to specify the custom Gradle distribution:

```
  ./gradlew wrapper --gradle-distribution-url=https\://artifactory.example.com/repo/gradle/gradle-8.3-bin.zip
```

---

*Dream your code, code your dream.*
cricket live score api provides
Published: 2023-08-29 07:28:52

Experience the thrill of real-time cricket action with our app! Get cricket scores faster than TV broadcasts. Stay updated with live match scores, ball-by-ball commentary, and instant highlights on your device. Don't wait for TV updates – enjoy the game as it unfolds, wherever you are. Download now!  **[Cricket Score Faster Than TV](https://latiyalinfotech.com/services/cricket-live-line-api/)**
Generate minimum 8 character password with at least one lowercase,one uppercase,one number and one special character.
Tags: javascript, password
Published: 2023-08-29 07:27:46

```
function generatePassword() {
  let pass = ''
  const charArr = ['ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz', '0123456789', '@#$'];
  const str = charArr.join('');
  for (let i = 0; i <= 8; i++) {
    const index = Math.floor(Math.random() * str.length + 1);
    pass += str.charAt(index)
  }
  if (!pass.checkExist(charArr[0])) {
    const x = Math.floor((Math.random() * 25) + 1);
		const upcChar=charArr[0].split('')
		console.log('upc',x,upcChar)
    pass+=upcChar[x]
  }
  if (!pass.checkExist(charArr[1])) {
    const x = Math.floor((Math.random() * 25) + 1);
		const lwcChar=charArr[1].split('')
		console.log('lwc',x,lwcChar)
    pass+=lwcChar[x]
  }
  if (!pass.checkExist(charArr[2])) {
    const x = Math.floor((Math.random() * 9) + 1);
		const numChar=charArr[2].split('')
		console.log('num',x,numChar)
    pass+=numChar[x]
  }
  if (!pass.checkExist(charArr[3])) {
    const x = Math.floor((Math.random() * 2) + 1);
		const splChar=charArr[3].split('')
		console.log('spl',x,splChar)
    pass+=splChar[x]
  }
  return pass;
}
console.log(generatePassword())
Output:-
eYc$8O9Xf
```
Link in Bio Website That Feels Like TikTok
Tags: portfolio, webdev
Published: 2023-08-29 07:25:18

---
title: Link in Bio Website That Feels Like TikTok
published: true
description: How I built my personal site to be a link in bio style website that looks and feels like TikTok and Instagram Reels
tags: portfolio, webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eljhrwf2c6ac5areuum7.png
canonical_url: https://codebushi.com/link-in-bio-website-that-feels-like-tiktok
---

I recently updated my personal website, https://hunterchang.com, and wanted to share how I did it. The idea was to make a link in bio type of site, like Linktree, but style it to look and feel like TikTok or Instagram Reels.

I added full-screen video backgrounds and have my social media icons clearly visible.

The code can all be found at: https://github.com/ChangoMan/hchang-reels

The main slider library I used was https://swiperjs.com

{% youtube NZnrp8GvDko %}

Key Takeaways:

1:28 - The site is just mainly 1 HTML page, with some CSS and JavaScript. I didn't think React or a framework was needed for such a simple site.

1:50 - There is a package.json file that spins up https://browsersync.io and another command that watches for Tailwind CSS changes.

4:05 - I used https://swiperjs.com to create the slides for the site. I imported the swiper element bundle and used their web components to make the sliders.

7:00 - There is a small amount of JavaScript to listen for when the slides change. I needed to know which slide was active, using addEventListener on "realindexchange"

7:54 - I get the "realIndex" from the event listener and use that to determine which slide I am on.

8:33 - I didn't want all the background videos to load at once, so I only load the video and include the "source" when I am on that particular slide.

9:15 - Description of the properties I used on my "video" tag. I took a picture from the first frame of the video and used that as the "poster"

10:57 - JavaScript that inserts the "source" for each slide, if there is no source detected. This is what triggers the background video to load once you get to the second and third slides.
Frontline Information Technology, Provide Best Payroll Management System UAE.
Published: 2023-08-29 07:22:39

FIT is committed to developing solutions that not only help businesses run like never before but also improve the lives of people everywhere. Being one of the leading enterprise business solution providers for the last 30 years, we help companies and industries of all sizes run better. From back offices to boardroom, warehouse to storefront, we empower people and organizations to work together more efficiently and use business insight more effectively to stay ahead of the competition 
We provide solutions including ERP, Human Resource Management solutions, Facility Management Solutions and other business management solutions. We provide best [payroll management system UAE.](https://fit.ae/horizon-hrms/)

Website - https://fit.ae/
Address – P.O.BOX No. – 51742, Office No – 113, Hamsah A, Near Ansar Gallery, Al Karama, Dubai, UAE 
Phone Number –  + 97143533727 / + 971563729367
Email – info@fit.ae
Create function to check a character exist in any string or not using string prototype.
Tags: javascript, prototype, charexits, beginners
Published: 2023-08-29 07:18:38

Here i will discuss to add a function in string object using prototype, so can access every where in application.

As we know that [prototype](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain) is super object in javascript.

```
String.prototype.checkExist = function (charStr) {
    const str = this.valueOf();
    let exitsCheck = false;
    const strArr = charStr.split('');
    for (let i = 0; i < strArr.length; i++) {
        if (str.includes(strArr[i])) {
            exitsCheck = true;
            break;
        }
    }
    return exitsCheck;
}
```
In above function checkExist function will check that a character exist in a string or not,if exists the return true other wise return false.

Reference: https://jsfiddle.net/u6BER/