Converting an Electron view content to PDF
- My first approach for this problem is to retrieve the dynamic HTML with styles and send those to the main.js file which is written in Node js using an Ajax request.
- Now, let's add some code to the bottom of the file to convert the web content into PDF.
- After writing the file, we now send an event named wrote-pdf which will be handled in the renderer.js.
- Now when the button is clicked, we send an event print-to-pdf to the main.js which will handle the conversion process.
- After conversion, the main.js will now send an event wrote-pdf which is used to print the location of the pdf file in the Electron app.
- After clicking the button the location will be written into the application view and a pdf file will be created.
Tributi joins Y Combinator in a quest to be Latin America’s TurboTax
- In Latin America, for example, only about eight percent of individuals file their taxes due to the high costs, according to Tributi.
- The Bogotá, Colombia-based startup is trying to automate this space by offering services to individual taxpayers, but also to accountants who want to go digital.
- The service costs $40, which is considerably cheaper than traditional fees, according to Vélez, who says that tax revenues per capita are about $200 but it costs about $100 to prepare the tax filing through traditional accountants.
- Tributi also offers software to tax accountants who want to digitalize their paperwork.
- When asked about the differences in country legislations, Vélez says that each tax system is different, but it’s the same broad dynamic across Latin America.
- According to him and his cofounder, Simón González, Tributi will be beneficial to governments in the long run as easing the tax filing process may entice more people to pay their taxes.
Making WebAssembly better for Rust and for all languages
- If you add a few annotations to your Rust code, it will automatically create the code that’s needed (on both sides) to make more complex types work.
- Plus, if we’ve added any npm dependencies, we need to put those into the package.json manifest file.
- Make it easy to add the WebAssembly package as a dependency… to include it in JS module dependency graphs.
- That’s because bundlers reduce the number of requests that you have to make for module files, which means it takes less time to download your code.
- We’ll need to add some features to WebAssembly to make it easier for bundlers to emulate ES modules.
Making a Racket with OpenFaaS
- While you don’t need it, it may help to have a Docker Hub account, in the case you wish to make your function available to the rest of the world, or are going to build your function on a machine different from the one you shall deploy to.
- Side Note: If you’d like a more permanent and manageable means of testing OpenFaaS, I highly suggest using Docker Machine to create a VM just for OpenFaaS.
- Create a new folder for your function, and in it run faas-cli template pull https://github.com/dvdmuckle/racket-template.
- The YAML file specifies the name of the function, what language it is, the name of the Docker image that will be built, the URL for where you can access your OpenFaaS setup, and a few other things.
Microsoft releases new Windows 10 preview with Windows Defender Application Guard improvements
- Microsoft today released a new Windows 10 preview for PCs with Windows Defender Application Guard (WDAG) improvements.
- This build is from the RS4 branch, which represents the next Windows 10 update the company has yet to announce (but is expected to ship in April).
- There is no new build from the RS5 branch today.
- Windows 10 is a service, meaning it was built in a very different way from its predecessors so it can be regularly updated with not just fixes, but new features, too.
- Microsoft has released four major updates so far: November Update, Anniversary Update, Creators Update, and Fall Creators Update.
- The only major changes in this release relate to WDAG.
- Today’s update bumps the Windows 10 build number for the RS4 branch from 17115 (made available to testers on March 6) to build 17120.
Repl.It 1.0: IDE that Grows from Playgrounds to Fullstack Apps
- If you want to use files, write to files, split your code into modules, etc., you just do that and behinds the scenes the environment will switch to one where you're interacting with the filesystem.
- You use it to listen on a port, any port you'd like; we'll detect that, host your server/repl on your Repl.it subdomain (forever!) and that's it you're developing/deploying an application.
- We also know that not all applications will grow incrementally so in typical Repl.it one-click-start fashion we've pre-setup a Django, Rails, Express, and Sinatra apps.
- Repl.it serverless apps are unique in that they're stateful and that the same repl, same protocol, same everything, that you use in development is deployed and running in production.
- After getting user-interest @pyelias is starting to explore building a full stack application using Django.
Legal tech is opening the system to those who need legal representation the most
- Public defenders, pro bono lawyers, and immigration attorneys provide a great service to citizens, yet the demand for legal support far outweighs the supply of legal aid services.
- Organizations like JustFix.nyc, in partnership with legal aid groups and community-based organizations, help tenants prepare legal documentation of substandard housing conditions so tenants can self-advocate and, if necessary, self-represent in housing court.
- GoodCall, a triage hotline, provides a direct line to legal support for the arrested before their cases advance without representation.
- Instead of working one-on-one with an immigration lawyer, applicants simply download VisaBot’s Facebook Messenger chat bot, submit necessary information, supporting documents, and their personal story, and the bot makes sure all the details are properly filed.
- As legal tech gains momentum, investors like Open Society Foundations, Google.org, and Omidyar Network are leading the way in supporting these startups, that are unanimously nonprofit.
- Wasting time formatting your code is a monotonous task and Prettier has been designed to solve this problem of wasting time on it.
- Prettier is an opinionated code formatter and it automates the process of formatting the entire code base.
- So, after setting up prettier, you no longer need to argue with coworkers about code formatting rules, semicolons, line breaks etc.
- On the other hand, Prettier is only concerned about formatting the file (maximum length, mixed tabs and spaces, quote style etc.).
- Prettier recommends installing the exact version in your project since they tend to introduce stylistic changes in patch releases.
- After installation succeeds, to run against a specific file, all you need to do now is run the command yarn prettier --write index.js.
- You can configure other options that you want prettier to work with, but usually, a configuration file is used for it.
Lame Google Play apps that attack users with Windows malware is still a thing
- Last year, researchers discovered 132 Android apps in the Google Play market that lamely attempted to infect users with...
- The common thread among all the apps: their code was written on programming platforms infected with malware known as Ramnit.
- The malware adds malicious iframes to every HTML file stored on an infected computer.
- Those iframes then got appended to files that were included in the Android apps.
- Researchers at security firm Zscaler said almost all of the 150 infected apps were detected using common antivirus engines.
- The two domains in the iframes were neutralized years ago through a process known as sinkholing.
- And even if the domains had been active, they would have been unable to infect an Android device.
- Still, Google's inability to detect obviously infected apps on at least two occasions over 12 months is a problem.
- A Slack client for your terminal.
- Download a compatible binary for your system.
- For convenience, place slack-term in a directory where you can access it from the command line.
- Usually this is /usr/local/bin.
- Create a slack-term.json file, place it in your home directory.
- Below is an an example file, you can leave out the OPTIONAL parts, you are only required to specify a slack_token.
- Remember that your file should be a valid json file so don't forget to remove the comments.
- You can also specify the location of the config file, this will give you the possibility to run several instances of slack-term with different accounts.
- Below are the default key-mapping for slack-term, you can change them in your slack-term.json file.